2012-03-23 7 views
0

Когда я делаю следующее:JavaScript Object

alert(objecr); 

Это показывает, как объект Object

Как отобразить содержание того, что находится в объекте? Я также попытался

alert(JSON.stringify(objecr)); 

но он показывает следующее:

"[объект Object]"

+0

Где делает «objecr» исходит? Потому что работает '' JSON.stringify'' (http://jsfiddle.net/minitech/uWwHh/). – Ryan

+0

Если это так, я не думаю, что у вас есть объект; вы получили строку, содержащую «объект объекта». – Pointy

ответ

2

Предполагая, что вы используете современный браузер для отладки, не используйте предупреждение.

console.log(objecr); 

Затем загляните в консоль отладки. IE9, Chrome, FF и Opera имеют хорошие консоли для просмотра объектов. Я думаю, что Safari тоже.

0

попробуйте console.dir (объект) и проверьте консоль сценария. он будет отображаться через экземпляр объекта (лучше всего работает в браузерах на основе WebKit).

Другие способы можно получать список пользователей с Object.getOwnPropertyNames и Object.keys вызова на экземпляре, а также на его цепочке прототипов (Object.getPrototypeOf (объект)) ..

+0

@fanaugen: obj.toString() по умолчанию никогда не возвращает имена свойств. JSON.stringify будет показывать только нефункционные, перечисляемые члены (те, у которых перечислены: false в их дескрипторе свойств, не будут показаны) –

0

Я просто проверял: в Chrome , оба obj.toString() и JSON.stringify(obj) возвращают строку, показывающую ключи и значения свойств объекта. Это может затем войти в консоль или подается в alert() ...

0

Другая возможность читать ваш объект таким образом:

for (var key in obj) { 
    if (obj.hasOwnProperty(key)) { 
     /* useful code here */ 
    } 
} 

В вашем случае:

for (var key in objecr) { 
    if (objecr.hasOwnProperty(key)) { 
     alert(objecr[key]); 
    } 
} 
Смежные вопросы