В соответствии с этой документацией,
Строковые представления каждого из этих объектов добавляются вместе в порядке, указанном и выводимом.
Также как ответ
+ x заставляет объект x в строку, которая является просто [объектом Объект]:
Итак, мой вопрос:
Если я делаю
str = new String("hello")
console.log(str) //prints the string object but not 'hello'
console.log(""+str) //prints "hello"
Итак, в первом случае он просто печатает объект (не вызывает метод toString()
).
Но во втором случае он не принуждает, а просто печатает примитивное значение. Почему это так?
Какой метод вызывает console.log
для печати объекта?
Обратите внимание, что это не дубликат этого question.