Не уверен, что это сработает для вашей ситуации, но часто map - хороший ответ.
Если это был ваш код с циклом for:
for (var i=0; i < objects.length; i++) {
}
Вы можете записать это так: map :
{objects.map(function(object, i){
return ;
})}
Синтаксис ES6:
{objects.map((object, i) => )}
Используйте console.dir () для вывода объекта, который можно просмотреть, вместо версии .toString (), например:
console.dir(obj/this/anything)
Следуя совету Felix Klings, я попробовал его в браузере Chrome.
console.dir ([1,2]) дает следующий вывод:
Array [2]
0: 1
1: 2
length: 2
_ proto _: Массив [0 ]
Пока console.log ([1,2]) дает следующий вывод:
[1, 2]
Итак, я считаю console.dir ( ) следует использовать для получения дополнительной информации, например, прототипа и т. д. в массивах и объектах.
Еще одно полезное различие в Chrome существует при отправке элементов DOM на консоль.
[/g1]
Примечание:
console.log
печатает элемент в дереве, подобном HTML console.dir
печатает элемент в дереве JSON-типа В частности, console.log
дает специальное лечение к элементам DOM, тогда как console.dir
- нет. Это часто бывает полезно при попытке увидеть полное представление объекта DOM JS.
В этой [и g0] справочной системе в консоли имеется более подробная информация об этой и других функциях.
С сайта firebug http://getfirebug.com/logging/
Вызов console.dir (object) будет регистрировать интерактивный список свойств объекта , например> миниатюрная версия вкладки DOM.
blockquote>
Я думаю, Firebug делает это иначе, чем инструменты разработчика Chrome. Похоже, Firebug дает стробированную версию объекта, а console.dir
предоставляет расширяемый объект. Оба дают вам расширяемый объект в Chrome, и я думаю, что здесь может возникнуть путаница. Или это просто ошибка в Chrome.
В Chrome оба делают то же самое. Расширяясь в своем тесте, я заметил, что Chrome получает текущее значение объекта при его расширении.
> o = { foo: 1 }
> console.log(o)
Expand now, o.foo = 1
> o.foo = 2
o.foo is still displayed as 1 from previous lines
> o = { foo: 1 }
> console.log(o)
> o.foo = 2
Expand now, o.foo = 2
Вы можете использовать следующее, чтобы получить строчную версию объекта, если это то, что вы хотите видеть. Это покажет вам, что объект находится во время вызова этой строки, а не при его расширении.
console.log(JSON.stringify(o));