首页 > 解决方案 > JavaScript 对象输出

问题描述

我对 JS 对象输出感到困惑。

第一:

var a = {}
console.log(a);

第一个的输出是{}.

第二个:

var a = {}
console.log(a + '123');

第二个的输出是[object Object]123

第三个:

var a = {
  toString: function() {
    return 'hello'
  }
}
console.log(a + '123');

第三个的输出是hello123

我不明白为什么第二个是[object Object]123第三个hello123

标签: javascript

解决方案


我怀疑您缺少的部分是 Objects 已经有一个默认的 toString() 方法,并且它的实现返回[object Object]

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString


推荐阅读