Daria 4 anni fa
parent
commit
f16a2748c5
3 ha cambiato i file con 123 aggiunte e 0 eliminazioni
  1. 12 0
      js_homework_05/index.html
  2. 111 0
      js_homework_05/index.js
  3. BIN
      myproject (2).lnk

+ 12 - 0
js_homework_05/index.html

@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Document</title>
+    <script src="index.js"></script>
+</head>
+<body>
+    
+</body>
+</html>

+ 111 - 0
js_homework_05/index.js

@@ -0,0 +1,111 @@
+// 3 persons
+// Сделать три ассоциативных массива a, b, c, в каждом из которых должны быть поля name и surname.
+let a = {
+    name: 'S',
+    surname: 'H',
+
+}
+let b = {
+    name: 'S',
+    surname: 'H',
+
+}
+let c = {
+    name: 'S',
+    surname: 'H',
+
+}
+
+// different fields
+// Добавьте некоторые другие поля (например age, fathername, sex (пол)) так, что бы набор полей отличался у разных объектов
+let a = {
+    name: 'Ania',
+    surname: 'Lampa',
+    fathername: 'Ivanovna',
+
+}
+
+let b = {
+    name: ' Serg',
+    surname: 'Dez',
+    age: 18,
+}
+
+let c = {
+    name: ' Dema',
+    surname: ' Antoshkin',
+    sex: 'man',
+
+}
+
+// fields check
+// Проверьте наличие необязательных полей у каждого из этих массивов. Если поле найдено, выведите его с помощью alert. Проверку делайте по typeof или in в if.
+for (let key in a) {
+    if (key != "name" && key != "surname") {
+        alert(`${key} поле необезательно.`)
+    }
+}
+for (let key in b) {
+    if (key != "name" && key != "surname") {
+        alert(`${key} поле необезательно.`)
+    }
+}
+for (let key in c) {
+    if (key != "name" && key != "surname") {
+        alert(`${key} поле необезательно.`)
+    }
+}
+
+// array of persons
+// Добавьте несколько ассоциативных массивов с персонами в обычный массив persons, например a,b,c. Так же добавьте персону литерально ({...}). Получится обычный массив с элементами-ассоциативными массивами с персонами.
+
+
+let persons = []
+
+
+
+persons.push(a);
+persons.push(b);
+persons.push(c);
+
+persons.push({ name: "Ilya", surname: "Babka", fathername: "nety", age: 31, });
+
+// loop of persons
+// Сделайте цикл, который выводит весь массив persons в форме объектов console.log(persons[i])
+for (let i = 0; i < persons.length; i++) {
+    console.log(persons[i])
+}
+
+for (let i of persons) {
+    console.log(i);
+}
+// loop of name and surname
+// Сделайте цикл, который выводит весь массив persons, но только Имя и Фамилию каждой персоны.
+
+for (let i of persons) {
+    for (let [key, val] of Object.entries(i)) {
+        if (key == "name" || key == "surname") {
+            console.log([key, val]);
+        }
+    }
+}
+// loop of loop of values
+// Сделайте цикл, который выводит весь массив persons, но только значения всех полей из объектов. Используйте вложенный цикл
+for (let i of persons) {
+    for (let value of Object.values(i)) {
+
+        console.log(value);
+    }
+}
+
+// fullName
+// Сделайте цикл, которых добавляет поле fullName в каждый объект, содержащий ФИО.Учтите, что поле fathername не является обязательным.
+for (let i of persons) {
+    if (!i.fathername) {
+        i.fathername = 'NET';
+    }
+    i.fullname = `${i.surname}  ${i.name}  ${i.fathername}`
+}
+console.log(persons)
+// serialize
+// Создайте JSON-строку из persons

BIN
myproject (2).lnk