Browse Source

hw_objects_in_json

Iryna Bolbat 2 years ago
parent
commit
a282b9f749
2 changed files with 242 additions and 0 deletions
  1. 12 0
      js_04_objects_in_json/index.html
  2. 230 0
      js_04_objects_in_json/main.js

+ 12 - 0
js_04_objects_in_json/index.html

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

+ 230 - 0
js_04_objects_in_json/main.js

@@ -0,0 +1,230 @@
+//1.3 persons, 2.different fields, 3.fields check
+// let a = {
+//     'name' : 'Petr',
+//     'surname' : 'Petrov'
+// };
+// let b = {
+//     'name' : 'Ivan',
+//     'surname' : 'Ivanov'
+// };
+// let c = {
+//     'name' : 'Dima',
+//     'surname' : 'Dmitrov'
+// };
+
+// a['fatherName'] = 'Petrovich';
+// b['age'] = 35;
+// c['sex'] = 'man';
+// console.log(c);
+
+
+// if('age' in a){
+//     alert(a.age);
+// }
+// else if ('fatherName' in b){
+//     alert(b.fatherName);
+// }
+// else if ('sex' in c){
+//     alert(c.sex);
+// }
+
+//4.array of persons, 5.loop of persons, 6.loop of name and surname, 7.loop of loop of values, 8.fullName
+// let persons = [];
+// let a = new Object();
+// let b = new Object();
+// persons.push(a);
+// persons.push(b);
+// a.name = 'Dmitriy';
+// a.surname = 'Dmitrov';
+// a.age = 20;
+// b.name = 'Ivan';
+// b.surname = 'Ivanov';
+// b.fathername = 'Ivanovich';
+// b.age = 34;
+// console.log(persons);
+
+// for(let i = 0; i < persons.length; i++){
+//     console.log(persons[i]);
+// }
+
+// for (let person of persons) {
+//     let name = person.name;
+//     let surname = person.surname;
+//     console.log(`Person: ${name} ${surname}`);
+// }
+
+// for(let person of persons){
+//     for(let key in person){
+//         console.log(person[key]);
+//     }
+// }
+
+// for(let person of persons){
+//     if('name' in person && 'surname' in person && 'fathername' in person){
+//         person.fullName = `${person.surname} ${person.name} ${person.fathername}`;
+//         console.log(person.fullName);
+//     }
+// }
+
+//9.serialize, 10.deserialize, 11.HTML
+// let persons = {
+//     person1 : {
+//         'name' : 'Petr',
+//         'surname' : 'Petrov',
+//         'age' : 23
+//     },
+//     person2 : {
+//         'name' : 'Ivan',
+//         'surname' : 'Ivanov',
+//         'pets' : 'cat'
+//     },
+// };
+// let json = JSON.stringify(persons);
+// console.log(json);
+
+// let subPerson = "{\"name\":\"Dmitriy\",\"surname\":\"Dmitrov\"}";
+// let jsonPerson = JSON.parse(subPerson);
+// console.log(jsonPerson);
+
+// persons.person3 = jsonPerson;
+// console.log(persons);
+
+// let str = "<table border='1'>";
+// str += "<tr style='background : yellow'><th>Person</th><th>name</th><th>surname</th></th></tr>";
+// for (let person in persons){
+//     str += `<tr><td>${person}</td>
+//     <td>${persons[person]['name']}</td>
+//     <td>${persons[person]['surname']}</td>`;
+// }
+// str += "</table>";
+// console.log(str);
+// document.write(str);
+
+//12.HTML optional fields
+// let str = "<table border='1'>";
+// str += "<tr style='background : yellow'><th>Person</th><th>name</th><th>surname</th><th>age</th><th>pets</th></th></tr>";
+// for (let person in persons){
+//     let age = 'age' in persons[person] ? persons[person]['age'] : '';
+//     let pets = 'pets' in persons[person] ? persons[person]['pets'] : '';
+//     str += `<tr><td>${person}</td>
+//             <td>${persons[person]['name']}</td>
+//             <td>${persons[person]['surname']}</td>
+//             <td>${age}</td>
+//             <td>${pets}</td>`;
+// }
+// str += "</table>";
+// console.log(str);
+// document.write(str);
+
+//13.HTML tr color
+// let i = 0;
+// let str = "<table border='1'>";
+// str += "<tr style='background : yellow'><th>Person</th><th>name</th><th>surname</th><th>age</th><th>pets</th></th></tr>";
+// for (let person in persons){
+//     let age = 'age' in persons[person] ? persons[person]['age'] : '';
+//     let pets = 'pets' in persons[person] ? persons[person]['pets'] : '';
+//     let backColor = i % 2 == 0 ? "style='background : pink'" : '';
+//         str += `<tr ${backColor}><td>${person}</td>
+//                 <td>${persons[person]['name']}</td>
+//                 <td>${persons[person]['surname']}</td>
+//                 <td>${age}</td>
+//                 <td>${pets}</td>`;
+//     i++;
+// }
+// str += "</table>";
+// console.log(str);
+// document.write(str);
+
+//14.HTML th optional
+// let arr = [];
+// let str = "<table border='1'><tr style='background : yellow'>";
+// for(let person in persons){
+//     let obj = Object.keys(persons[person]);
+//     for(let key of obj){
+//         if(!(arr.includes(key))){
+//             arr.push(key);
+//             str += `<th>${key}</th>`;
+//         }
+//     }
+// }
+// str += '</tr>';
+// for(let person in persons){
+//     str += `<tr>`;
+//     for(let key of arr){
+//         let un = key in persons[person] ? persons[person][key] : '';
+//         str += `<td>${un}</td>`;
+//     }
+//     str += '</tr>';
+// }
+
+// console.log(arr);
+// document.write(str);
+
+
+//15.Задание на синий пояс
+// var someTree = {
+//     tagName: "table", //html tag
+//     subTags: [ //вложенные тэги
+//         {
+//                     tagName: "tr",
+//                     subTags: [
+//                         {
+//                             tagName: "td",
+//                             text: "some text",
+//                         },
+//                         {
+//                             tagName: "td",
+//                             text: "some text 2",
+//                         }
+//                     ]
+//         }
+//     ],
+//     attrs: 
+//     {
+//         border: 1,
+//     },
+// };
+// let str = '';
+// if('tagName' in someTree){
+//     str += `<${someTree.tagName} border='1'>`;
+// }
+// for(let child of someTree.subTags){
+//     str += `<${child.tagName}>`;
+
+//     for(let children of child.subTags){
+//         str += `<${children.tagName}>`;
+//         str += `${children.text}`;
+//         str += `</${children.tagName}>`;
+//     }
+//     str += `</${child.tagName}>`;
+// }
+// str += `</${someTree.tagName}>`;
+
+// console.log(str);
+// document.write(str);
+
+//16.destruct array
+// let arr = [1,2,3,4,5, "a", "b", "c"];
+// let [odd1, even1, odd2, even2, odd3, ...letters] = arr;
+// console.log(odd1, even1, odd2, even2, odd3, letters);
+
+//17.destruct string
+// let arr = [1, "abc"];
+// let[number, [s1, s2, s3]] = arr;
+// console.log(number, s1, s2, s3);
+
+//18.destruct 2
+// let obj = {
+//     name: 'Ivan',
+//     surname: 'Petrov',
+//     children: [{name: 'Maria'}, {name: 'Nikolay'}]
+// };
+// let [name1, name2] = obj.children;
+// console.log(name1, name2);
+
+//19.destruct 3
+// let arr = [1,2,3,4, 5,6,7,10];
+// let {a = arr[0], b = arr[1], length} = arr;
+// console.log(a, b, length);
+
+//20.Задание на черный пояс