Есть ли надстройка / приложение стороннего производителя или какой-либо способ выполнить дамп карты объекта в отладчике скриптов для объекта JavaScript?
Вот такая ситуация ... У меня метод вызывается дважды, и каждый раз что-то меняется. Я не уверен, что отличается, но что-то есть. Итак, если бы я мог выгрузить все свойства окна (или хотя бы window.document) в текстовый редактор, я мог бы сравнить состояние между двумя вызовами с простым файлом diff. Мысли?
javascript
Джесси Хоул
источник
источник
Ответы:
Firebug +
console.log(myObjectInstance)
источник
[object Object]
. Не очень полезноconsole.log("my object: %o", myObj)
В противном случае вы получите строковое представление, иногда отображающее:
[object Object]
или что-то в этом роде.
источник
my object: %o
. Не очень полезно :)function mydump(arr,level) { var dumped_text = ""; if(!level) level = 0; var level_padding = ""; for(var j=0;j<level+1;j++) level_padding += " "; if(typeof(arr) == 'object') { for(var item in arr) { var value = arr[item]; if(typeof(value) == 'object') { dumped_text += level_padding + "'" + item + "' ...\n"; dumped_text += mydump(value,level+1); } else { dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n"; } } } else { dumped_text = "===>"+arr+"<===("+typeof(arr)+")"; } return dumped_text; }
источник
if (level > 10) return level_padding + '<< too deep >>';
Если вы используете Chrome, Firefox или IE10 +, почему бы не расширить консоль и не использовать
(function() { console.dump = function(object) { if (window.JSON && window.JSON.stringify) console.log(JSON.stringify(object)); else console.log(object); }; })();
для краткого кросс-браузерного решения.
источник
Просто используйте:
console.dir(object);
вы получите красивое интерактивное представление объекта. Работает в Chrome и Firefox
источник
console.dir({bar:"foo"});
Заменяет ли ваш объект метод toString?"Для Chrome / Chromium
console.log(myObj)
или это эквивалент
console.debug(myObj)
источник
для лучшей читаемости вы можете преобразовать объект в строку json, как показано ниже:
console.log(obj, JSON.stringify(obj));
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
источник
Использование
console.log(object)
приведет к переносу вашего объекта в консоль Javascript, но это не всегда то, что вам нужно. ИспользованиеJSON.stringify(object)
вернет большую часть данных, которые будут сохранены в переменной, например, для отправки его на ввод текстового поля и отправки содержимого обратно на сервер.источник
В Chrome щелкните 3 точки, выберите "Дополнительные инструменты" и щелкните "Разработчик". В консоли введите console.dir (ваш объект). Щелкните эту ссылку, чтобы просмотреть пример изображения
источник