首页 > 试题广场 >

下列代码的运行输出结果是?

[单选题]
下列代码的运行输出结果是?

  • {key: 'b'}
  • {key: 'c'}
  • b
  • c
var a = {},b={key:'b'},c={key:'c'}
a[b] = 'b'
// a  = {[object Object]: "b"}
a[c] = 'c'
//a = {[object Object]: "c"}
a[b]
// "c",实际打印的是a["[object Object]"]


发表于 2019-12-08 14:46:46 回复(1)
对象的key值只能是String或者symbol,其他的话就会使用toString
发表于 2020-09-13 17:43:23 回复(0)
在本题中,事先没有使用toString()方法把b和c转化成字符串,而是使用a[b]强行将其转换,会自动调用Object.prototype.toString.call(),结果为[object Object]
发表于 2020-05-16 21:15:59 回复(0)
这题考察的是对象属性的另外一种操作方式,知道这个点这个题目就好理解了。

发表于 2019-12-12 11:06:16 回复(0)
编辑于 2019-12-06 11:41:13 回复(0)
没看懂这个。。。
发表于 2019-11-29 21:26:22 回复(0)