index.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. // 3 persons
  2. // Сделать три ассоциативных массива a, b, c, в каждом из которых должны быть поля name и surname.
  3. let a = {
  4. name: 'S',
  5. surname: 'H',
  6. }
  7. let b = {
  8. name: 'S',
  9. surname: 'H',
  10. }
  11. let c = {
  12. name: 'S',
  13. surname: 'H',
  14. }
  15. // different fields
  16. // Добавьте некоторые другие поля (например age, fathername, sex (пол)) так, что бы набор полей отличался у разных объектов
  17. let a = {
  18. name: 'Ania',
  19. surname: 'Lampa',
  20. fathername: 'Ivanovna',
  21. }
  22. let b = {
  23. name: ' Serg',
  24. surname: 'Dez',
  25. age: 18,
  26. }
  27. let c = {
  28. name: ' Dema',
  29. surname: ' Antoshkin',
  30. sex: 'man',
  31. }
  32. // fields check
  33. // Проверьте наличие необязательных полей у каждого из этих массивов. Если поле найдено, выведите его с помощью alert. Проверку делайте по typeof или in в if.
  34. for (let key in a) {
  35. if (key != "name" && key != "surname") {
  36. alert(`${key} поле необезательно.`)
  37. }
  38. }
  39. for (let key in b) {
  40. if (key != "name" && key != "surname") {
  41. alert(`${key} поле необезательно.`)
  42. }
  43. }
  44. for (let key in c) {
  45. if (key != "name" && key != "surname") {
  46. alert(`${key} поле необезательно.`)
  47. }
  48. }
  49. // array of persons
  50. // Добавьте несколько ассоциативных массивов с персонами в обычный массив persons, например a,b,c. Так же добавьте персону литерально ({...}). Получится обычный массив с элементами-ассоциативными массивами с персонами.
  51. let persons = []
  52. persons.push(a);
  53. persons.push(b);
  54. persons.push(c);
  55. persons.push({ name: "Ilya", surname: "Babka", fathername: "nety", age: 31, });
  56. // loop of persons
  57. // Сделайте цикл, который выводит весь массив persons в форме объектов console.log(persons[i])
  58. for (let i = 0; i < persons.length; i++) {
  59. console.log(persons[i])
  60. }
  61. for (let i of persons) {
  62. console.log(i);
  63. }
  64. // loop of name and surname
  65. // Сделайте цикл, который выводит весь массив persons, но только Имя и Фамилию каждой персоны.
  66. for (let i of persons) {
  67. for (let [key, val] of Object.entries(i)) {
  68. if (key == "name" || key == "surname") {
  69. console.log([key, val]);
  70. }
  71. }
  72. }
  73. // loop of loop of values
  74. // Сделайте цикл, который выводит весь массив persons, но только значения всех полей из объектов. Используйте вложенный цикл
  75. for (let i of persons) {
  76. for (let value of Object.values(i)) {
  77. console.log(value);
  78. }
  79. }
  80. // fullName
  81. // Сделайте цикл, которых добавляет поле fullName в каждый объект, содержащий ФИО.Учтите, что поле fathername не является обязательным.
  82. for (let i of persons) {
  83. if (!i.fathername) {
  84. i.fathername = 'NET';
  85. }
  86. i.fullname = `${i.surname} ${i.name} ${i.fathername}`
  87. }
  88. console.log(persons)
  89. // serialize
  90. // Создайте JSON-строку из persons