-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
100 lines (89 loc) · 2.41 KB
/
Copy pathmain.js
File metadata and controls
100 lines (89 loc) · 2.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
/*
0 Алгоритмы
Реализуйте функцию которая будет превращать трехмерный массив
в двухмерный, а если массив двухмерный, тогда в трехмерный массив
// solution([ [1, 'a'], [2, 'b'], [3, 'c'] ]) => [ [1, 2, 3], [a, b, c] ]
// solution([ [1, 3, 5], [2, 4, 6] ]) => [ [1, 2], [3, 4], [5, 6] ]
// solution([[]]) => []
[ [ [ ] ] ] = [ [] ]
ИСПОЛЬЗУЙТЕ МЕТОДЫ МАССИВОВ !
*/
//
/*yt получилось */
const solution = arr => {
let newArr = [];
for ( let i = 0; i < arr.length; i++) {
let elem = arr[i];
for (let j = 0; j < elem.length-1; j++) {
newArr[i] = elem[j];
}
}
};
solution([ [1, 'a'], [2, 'b'], [3, 'c'] ]);
solution([ [1, 3, 5], [2, 4, 6] ]);
solution([[]]);
const navigation = [
{name: 'Главная'},
{
name: 'Каталог',
children: [
{
name: 'Компьютеры',
children: [
{
name: 'Ноутбуки',
children: [{name: 'Apple'}, {name: 'HP'}]
},
{name: 'Планшеты'}
]
},
{
name: 'Телевизоры',
children: [{name: '4k'}, {name: 'samrt-tv'}]
},
]
},
{name: 'Профиль'}
];
/*
Визуализируйте массив, если в коллекции есть свойство
children,
тогда создайте вложенный лист
name - свойство h1
children ul -> li
Используйте innerHTML
*/
/*
<h1>Main</h1>
<ul>
<h1>Catalog</h1>
<li>
<ul>
<h1>Comp</h1>
<ul>
<li>
<h1>Notebook</h1>
<h1>...</h1>
</li>
</ul>
</li>
*/
const visualArray = arr => {
return `
${arr.map(elem => {
if (elem.children) {
let arr = elem.children;
return `
<h1>${elem.name}</h1>
<li>
<ul>
${visualArray(arr)}
</ul>
</li>
`
} else {
return`<h1>${elem.name}</h1>`
}
}).join('')}`
};
document.body.innerHTML += visualArray(navigation);