Розетка при возврате [Объект объекта] в консоли браузера [дубликат]

вы можете попробовать следующее:

setTimeout(function(){printer(name)}, 1000)
31
задан JP Richardson 30 January 2013 в 07:32
поделиться

4 ответа

+ x заставляет объект x в строку, которая просто [object Object]:

http://jsfiddle.net/Ze32g/

Симпатичная печать - очень хороший и, вероятно, очень сложный базовый код, который кто-то реализовал как часть объекта console и метода log.

Попробуйте следующее:

console.log("hmm: ", x);
59
ответ дан Explosion Pills 22 August 2018 в 21:47
поделиться
  • 1
    Мне это нравится. Это заставляет меня задаться вопросом, почему другие примеры не используют форму log(x, y) вместо log(x + y). – John Zwinck 30 January 2013 в 07:41
  • 2
    @JohnZwinck Я не думаю, что версия переменных аргументов так же широко поддерживается (по крайней мере, Chrome и, видимо, node.js поддерживают ее, но другие могут не поддерживать) – Explosion Pills 30 January 2013 в 07:45
  • 3
    console.log("Hi %s! Have a nice day!", "John"); // Hi John! Have a nice day! – javiniar.leonard 12 August 2015 в 04:18

Функция console.log

'console.log' является перегруженной функцией, которая принимает список параметров, которые либо передаются копией (строка | число | boolean), либо ссылкой (все остальное) .

В случае значений, переданных копией, значение печатается путем литья его как строки. В случае значений, переданных по ссылке, значение довольно печатается, когда браузер считает нужным.

Оператор +

Оператор знака плюс (+) перегружен. Когда обе стороны оператора являются числами, возвращается сумма двух операторов.

Если обе стороны оператора являются строкой, то обе стороны будут отлиты как строка и конкатенация этих двух строк будет возвращен.

console.log("hmm: " + x);

совпадает с записью

console.log(String("hmm: ") + String(x));

Решение

Предотвращает неявное строковое кастинг путем замены знака плюс (+) с запятой (,)

console.log("hmm: ", x);

Дополнительная информация

Более подробное описание функции «console.log» приведено в: https: // разработчик .mozilla.org / en-US / docs / DOM / console.log

Подробнее о подробном описании оператора знака плюс (+) см.: http: / /www.w3schools.com/js/js_operators.asp

14
ответ дан Aaren Cordova 22 August 2018 в 21:47
поделиться

У вас есть несколько вариантов:

process.stdout.write('hmm: ')
console.dir(x)

Другое ...

var util = require('util')
process.stdout.write('hmm: ')
console.log(util.inspect(x, true, 10, true))

Дополнительную информацию см. в util.inspect docs.

Редактировать: Извините, мой ум думал, что я читаю Node.js. Это справедливо только для Node.js. Итак, я оставлю его для любого Googlers.

Edit2: Я не сумасшедший, мне просто нужно спать. Вы записали Node.js. Я собираюсь добавить его как тег.

2
ответ дан JP Richardson 22 August 2018 в 21:47
поделиться

Используйте JSON.stringify при печати объекта с добавлением строки

console.log("Haa"+JSON.stringify(x))
5
ответ дан Ranganadh Paramkusam 22 August 2018 в 21:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: