Как я могу проверить объект в окне предупреждения? Обычно оповещение об объекте просто выбрасывает имя узла:
alert(document);
Но я хочу получить свойства и методы объекта в окне предупреждения. Как я могу добиться этой функциональности, если это возможно? Или есть другие предложения?
В частности, я ищу решение для производственной среды, где console.log и Firebug недоступны.
javascript
object
inspect
Валентина
источник
источник
console.log
в firefox или chromeJSON.stringify
бывает полезно.Ответы:
for
-in
петли для каждого свойства объекта или массива. Вы можете использовать это свойство как для получения значения, так и для его изменения.Примечание. Личные свойства недоступны для проверки, если вы не используете «шпион»; По сути, вы переопределяете объект и пишете код, который выполняет цикл for-in внутри контекста объекта.
Ибо выглядит так:
Пример кода:
Изменить: Некоторое время назад я написал свой собственный инспектор, если вам интересно, я рад поделиться.
Изменить 2: Ну, я все равно написал один.
источник
Как насчет
alert(JSON.stringify(object))
современного браузера?В случае
TypeError: Converting circular structure to JSON
, вот еще варианты: Как сериализовать узел DOM в JSON, даже если есть циклические ссылки?Документация:
JSON.stringify()
предоставляет информацию о форматировании или оформлении вывода.источник
alert(JSON.stringify(object, null, 4)
где4
- количество пробелов, используемых для отступов.stringify
не будет показывать методы:JSON.stringify({f: ()=>{}}) => "{}"
. Кроме того , если объект реализуетtoJSON
метод , вы получите то , что , что возвращает метод, который является бесполезным , если вы хотите , чтобы проверить объект:JSON.stringify({toJSON: () => 'nothin'}) => '"nothin"'
.Используйте
console.dir(object)
и плагин Firebugисточник
console.dir
функции. Я не мог понять, почему я больше не могу просматривать весь объект в Firebug. Теперь все для меня рассортировано. Спасибо!console.log
помимо удобства отображения, пожалуйстаЕсть несколько способов:
В контексте консоли иногда могут быть полезны .constructor или .prototype:
источник
Используйте свою консоль:
Или, если вы проверяете элементы html dom, используйте console.dir (object). Пример:
Или, если у вас есть массив объектов js, вы можете использовать:
Если вы выводите много console.log (объектов), вы также можете написать
Это поможет вам пометить объекты, записанные на консоль.
источник
console
потому что я использую стиль stackoverflow.com/q/7505623/1480391, и он несовместимисточник
Это вопиющая подделка превосходного ответа Кристиана. Я только что сделал его более читаемым:
источник
Вот мой инспектор объектов, более читаемый. Поскольку для записи кода здесь требуется много времени, вы можете загрузить его со страницы http://etto-aa-js.googlecode.com/svn/trunk/inspector.js.
Используйте так:
источник