Обходной путь для записи объектов на консоль в Chrome - PullRequest
9 голосов
/ 23 сентября 2011

Если вы выполните этот код:

var foo = {bar: 'baz'};
window.console.log(foo);
foo.bar = 'bla';

Консоль показывает это после расширения объекта:

(при регистрации объектов и массивов записывается не значение времени выполнения)

Эта ошибка была задокументирована более года назад:

http://code.google.com/p/chromium/issues/detail?id=50316

Есть ли обходной путь для регистрации объектов в Chrome?

Ответы [ 2 ]

9 голосов
/ 23 сентября 2011

Я просто использую JSON.stringify, когда мне это нужно. Не знаю, будет ли это делать для вас, но это легко и эффективно для целей отладки.

Это не годится для объектов со ссылками на функции, поэтому, если вам нужно, я бы подумал об использовании либо глубокой копии объекта (вы можете использовать превосходный метод jQuery extend), либо обкатке собственной функции регистрации, которая будет рекурсивно зацикливаться на объекте и распечатывать его.

0 голосов
/ 23 сентября 2011

Вы можете использовать выделенную библиотеку журналов, такую ​​как моя log4javascript .

...