Пожалуйста, пройти через этот JavaScript Object:многомерный массив в объект
var obj = [{
id: "A",
children: [{
id: "B",
children: [{
id: "C",
children: [{
id: "D",
children: [{
id: "E",
children: [{
id: "F"
}]
}]
}, {
id: "G",
children: {
id: "H"
}
}]
}, {
id: "I"
}]
}, {
id: "J",
children: [{
id: "K"
}]
}]
}, {
id: "L"
}, {
id: "M",
children: {
id: "N",
children: [{
id: "O"
}]
}
}, {
id: "P"
}];
Как писать код JavaScript, чтобы рекурсивно разобрать его и напечатать все идентификаторы в консоли, так что выход выглядит следующим образом:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Вот как далеко я мог добраться. После этого я не мог думать о какой-либо логике.
for (i=0 ; i < obj.length ; i++){
var objId = obj[i];
for(j=i; j<1 ; j++){
console.log(obj[j].id);
console.log(obj[j].children[j].id);
}
}
Я не понимаю, какую логику следует применять здесь. Помогите.
Вы пробовали что-нибудь себя еще? –
Вам нужно пройти объект в определенном порядке, чтобы получить желаемый результат. Посмотрите на стратегии обхода и выберите подходящий. –
вы должны использовать рекурсивную функцию. Принцип: проверка функции, если объект содержит детей, чтобы называть себя детьми;) –