123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390 |
- // 3 persons------------------------------------------------------------------------------------------------------------------------------------//
- // let a = {
- // name: "Alexandra",
- // surname: "Olefirenko",
- // };
- // let b = {
- // name: "Platon",
- // surname: "Plokhenko",
- // };
- // let c = {
- // name: "Sofia",
- // surname: "Sternenko",
- // };
- // different fields---------------------------------------------------------------------------------------------------------------------------------------------------;
- // let a = {
- // name: "Alexandra",
- // surname: "Olefirenko",
- // sex: "female",
- // age: 21,
- // };
- // let b = {
- // name: "Platon",
- // surname: "Plokhenko",
- // education: "Bachelor degree",
- // age: 18,
- // };
- // let c = {
- // name: "Sofia",
- // surname: "Sternenko",
- // fathername: "Vyktoryvna",
- // age: 27,
- // };
- // fields check---------------------------------------------------------------------------------------------------------------------------------------------------;
- let a = {
- name: "Alexandra",
- surname: "Olefirenko",
- sex: "female",
- age: 21,
- };
- let b = {
- name: "Platon",
- surname: "Plokhenko",
- education: "Bachelor degree",
- age: 18,
- };
- let c = {
- name: "Sofia",
- surname: "Sternenko",
- fathername: "Vyktoryvna",
- age: 27,
- };
- if (Object.keys(a).includes("age", "sex")) {
- console.log(a.sex, a.age);
- } else {
- console.log("Not here");
- }
- if (Object.keys(b).includes("age", "education")) {
- console.log(b.sex, b.education);
- } else {
- console.log("Not here");
- }
- if (Object.keys(c).includes("fathername", "age")) {
- console.log(c.fathername, c.age);
- } else {
- console.log("Not here");
- }
- // array of persons---------------------------------------------------------------------------------------------------------------------------------------------------;
- let persons = [
- (a = {
- name: "Alexandra",
- surname: "Olefirenko",
- sex: "F",
- age: 21,
- }),
- (b = {
- name: "Platon",
- surname: "Plokhenko",
- sex: "M",
- age: 18,
- education: "Bachelor degree",
- }),
- (c = {
- name: "Mariya",
- surname: "Sternenko",
- fathername: "Vyktoryvna",
- sex: "F",
- age: 27,
- region: "Kyiv",
- phoneNumber: "0731232323",
- }),
- ];
- // loop of persons-----------------------------------------------------------------------------------------------------------------------------------------------------------;
- for (i = 0; i < persons.length; i++) {
- console.log(persons[i]);
- }
- // loop of name and surname---------------------------------------------------------------------------------------------------------------------------------------------------;
- for (let i = 0; i < persons.length; i++) {
- if (
- typeof persons[i].name === "string" &&
- typeof persons[i].surname === "string"
- ) {
- for (key in persons[i]) {
- }
- console.log(
- "name: " +
- " " +
- persons[i].name +
- "," +
- " " +
- "surname: " +
- " " +
- persons[i].surname
- );
- } else {
- alert("error");
- }
- }
- // loop of loop of values---------------------------------------------------------------------------------------------------------------------------------------------------;
- for (i = 0; i <= persons.length; i++) {
- for (let key in persons[i]) {
- console.log(key + ": " + persons[i][key]);
- }
- }
- // fullName---------------------------------------------------------------------------------------------------------------------------------------------------;
- for (let i = 0; i <= persons.length; i++) {
- for (let key in persons[i]) {
- if ("fathername" in persons[i]) {
- console.log(
- (persons[i].fullName =
- persons[i].surname +
- " " +
- persons[i].name +
- " " +
- persons[i].fathername)
- );
- } else {
- console.log(
- (persons[i].fullName = persons[i].surname + " " + persons[i].name)
- );
- }
- }
- }
- // serialize---------------------------------------------------------------------------------------------------------------------------------------------------;
- JSON.stringify(persons);
- // deserialize---------------------------------------------------------------------------------------------------------------------------------------------------;
- let d = JSON.parse('{"name": "Taras", "surname": "Shevchenko"}');
- persons.push(d);
- // HTML----------------------------------------------------------------------------------------------------------------------------------------------------------;
- document.write("</table>");
- document.write(
- '<table style = "border-collapse: collapse", "border: 1px solid black; ">'
- );
- document.write("<tr>");
- for (key in persons[0]) {
- document.write('<th style = "border: 1px solid black;">' + key + "</th>");
- }
- document.write("</tr>");
- for (let i = 0; i < persons.length; i++) {
- document.write("<tr>");
- for (value in persons[i]) {
- document.write(
- '<td style = "border: 1px solid black;">' + persons[i][value] + "</td>"
- );
- }
- document.write("</tr>");
- }
- document.write("</table>");
- // HTML optional fields---------------------------------------------------------------------------------------------------------------------------------------------------;
- {
- let headers = persons
- .reduce((a, b) => a.concat(Object.keys(b)), [])
- .filter((v, i, s) => s.indexOf(v) === i);
- str =
- `<table style = "border: 1px solid black; border-collapse: collapse;"><tr>${headers
- .map(
- (e) =>
- `<th style = "border: 1px solid black; border-collapse: collapse;">${e}</th>`
- )
- .join("\n")}</tr>` +
- persons
- .map(
- (e) =>
- `<tr>${headers
- .map(
- (e1) =>
- `<td style = "border: 1px solid black; border-collapse: collapse;">${
- e[e1] ? e[e1] : "-"
- }</td>`
- )
- .join("\n")}</tr>`
- )
- .join("\n") +
- `</table>`;
- document.write(str);
- }
- // HTML tr color---------------------------------------------------------------------------------------------------------------------------------------------------;
- {
- let headers = persons
- .reduce((a, b) => a.concat(Object.keys(b)), [])
- .filter((v, i, s) => s.indexOf(v) === i);
- str =
- `<table style = "border: 1px solid black; border-collapse: collapse;"><tr style = "background-color: #ffff00;" >${headers
- .map(
- (e) =>
- `<th style = "border: 1px solid black; border-collapse: collapse;">${e}</th>`
- )
- .join("\n")}</tr>` +
- persons
- .map(
- (e) =>
- `<tr style = "background-color: lightgreen;">${headers
- .map(
- (e1) =>
- `<td style = "border: 1px solid black; border-collapse: collapse;">${
- e[e1] ? e[e1] : "-"
- }</td>`
- )
- .join("\n")}</tr>`
- )
- .join("\n") +
- `</table>`;
- document.write(str);
- }
- // HTML th optional---------------------------------------------------------------------------------------------------------------------------------------------------;
- // Задание на синий пояс.---------------------------------------------------------------------------------------------------------------------------------------------------;
- // HTML constructor---------------------------------------------------------------------------------------------------------------------------------------------------------;
- let body = {
- tagName: "body",
- subTags: [
- {
- tagName: "div",
- subTags: [
- {
- tagName: "span",
- text: "Enter a data please:",
- },
- {
- tagName: "br",
- },
- {
- tagName: "input",
- attrs: {
- type: "text",
- id: "name",
- },
- },
- {
- tagName: "input",
- attrs: {
- type: "text",
- id: "surname",
- },
- },
- ],
- },
- {
- tagName: "div",
- subTags: [
- {
- tagName: "button",
- text: "OK",
- attrs: {
- id: "ok",
- },
- },
- {
- tagName: "button",
- text: "cancel",
- attrs: {
- id: "cancel",
- },
- },
- ],
- },
- ],
- };
- function createElem(tagName, attrs, text) {
- var elem = document.createElement(tagName);
- if (attrs) for (var name in attrs) elem.setAttribute(name, attrs[name]);
- if (text) elem.textContent = text;
- return elem;
- }
- function walker(tree) {
- var tagName = tree.tagName,
- attrs = tree.attrs,
- text = tree.text,
- elem = createElem(tagName, attrs, text);
- if (tree.subTags)
- tree.subTags.forEach(function (el) {
- el = walker(el);
- elem.appendChild(el);
- });
- return elem;
- }
- var table = walker(body);
- document.body.appendChild(table);
- // destruct array---------------------------------------------------------------------------------------------------------------------------------------------------;
- {
- let arr = [1, 2, 3, 4, 5, "a", "b", "c"];
- let evenArray = [];
- let oddArray = [];
- let lettersFromArr = [];
- for (let i = 0; i < arr.length; i++) {
- if (typeof arr[i] === "number") {
- if (arr[i] % 2 === 0) {
- evenArray.push(arr[i]);
- } else {
- oddArray.push(arr[i]);
- }
- } else {
- lettersFromArr.push(arr[i]);
- }
- }
- let [even1, even2] = evenArray;
- let [odd1, odd2, odd3] = oddArray;
- }
- // destruct string---------------------------------------------------------------------------------------------------------------------------------------------------;
- let arr1 = [1, "abc"];
- let [number, [s1, s2, s3]] = arr1;
- console.log(number);
- console.log(s1);
- console.log(s2);
- console.log(s3);
- // destruct 2---------------------------------------------------------------------------------------------------------------------------------------------------;
- let obj = {
- name: "Ivan",
- surname: "Petrov",
- children: [{ name: "Maria" }, { name: "Nikolay" }],
- };
- let {
- children: [{ name: name1 }, { name: name2 }],
- } = obj;
- console.log(name1);
- console.log(name2);
- // destruct 3---------------------------------------------------------------------------------------------------------------------------------------------------;
- {
- let arr = [1, 2, 3, 4, 5, 6, 7, 10];
- let { 0: a, 1: b, length } = arr;
- console.log(a);
- console.log(b);
- console.log(length);
- }
|