Подскажите как вывести все свойства объекта?
Есть объект
obj = {ob : "param 1", more : {ob : "param 2", more: {ob : "param 3", more : {ob: param: "param 3", more: "stop" }}}}; как мне его перебрать чтобы получить массив всех ob и массив всех more ? пожалуйста подскажите! |
|
Цитата:
http://javascript.ru/typeof |
ksa, да я понимаю как это сделать для свойств верхнего уровня, а как перебрать вложенные объекты? подскажи пожалуйста! :)
|
Цитата:
2. Если объект - перебрать его как любой объект. Про рекурсию слышал? :) Так вот это как раз её случай. ;) |
Цитата:
|
это типа сигнал "хватит переберать" :)
PS. про рекурсию щас почитаю, спасибо. |
Цитата:
|
Цитата:
Нипанятна... :cray: |
function parseOb (ob) {
for(var key in ob)
{
var massVal = []
var massMore = []
massVal.push(key)
massMore.push(ob[key])
if (ob[key] instanceof Object)
{
parseOb(ob)
}
}
}
var obj = {val: 1, more: { val: 2, more: { val: 3, more: { val: 4, more: 0 } } } };
parseOb(obj);
ругается Uncaught RangeError: Maximum call stack size exceeded ЗЫ, мне нужно понять если следущий more объект то взять его имя (val) и так пока незакончатся все more (следуя вашему совету поменял "stop" на 0) |
| Часовой пояс GMT +3, время: 20:42. |