2014-10-18 4 views
1

Давайте предположим, что у меня есть JS код так:Javascript расширенный console.log

var foo = new Array('foo', 'bar'); var bar = new Array(); bar.push(foo); console.log(bar);

Журнал Консоль дает мне только:

Array [ Array[2] ]

Я ищу способ получить истинное войдите в консоль. В этом случае массив с подмассивами и т. Д. Нечто похожее на PHP:

echo '<pre>' . print_r($bar, TRUE);

+0

Используйте лучшие инструменты для браузера/dev –

+0

@SteveRobbins, что вы предлагаете? Будет ли firebug напечатать эти данные? – Wampirue

+0

В Chrome вы можете расширить объекты http://i.imgur.com/woSwpZC.png –

ответ

1

dir Используйте вместо log. Это дает интерактивное представление.

0

Chrome/Opera/Firefox позволяют проводить дополнительную проверку массивов через console.log().

Попробуйте Firebug также для дополнительной способности отладки.

0

Если вы используете browser supports, вы также можете использовать функцию JSON.stringify(). Это лучше всего объяснить на примере:

var a = [ 
    "123", 
    { "foo": "bar" }, 
    [ "inner", "array", [ "inner-inner", "array-array" ] ] 
]; 
console.log(JSON.stringify(a)); 
// "["123",{"foo":"bar"},["inner","array",["inner-inner","array-array"]]]" 

В основном функция преобразует объекты в формат строки JSON позволяет видеть каждый объект/массив и все его вложенные элементы в плане, нитевидные формате.

Помните, что этот метод будет эффективен только в том случае, если объект, который вы пытаетесь просмотреть, содержит только простые типы данных ... Определения функций внутри объектов и более сложные встроенные объекты, такие как window или document, не приведут к Полезная информация.

Смежные вопросы