一、对象的 key 到底是什么
1、对象的 key 永远是字符串
2、对象取值可以使用[ ] 进行计算,且中括号优先级高于点运算符
const bird = {
size: 'small'
}
const mouse = {
name: 'Mickey',
small: true
}
console.log(mouse.bird.size); // TypeError
console.log(mouse.bird['size']); // TypeError
console.log(mouse[bird['size']]); // true 正常输出
3、对象的 key 会被强制转为字符串
const a = {}
const b = { key: 'b' }
const c = { key: 'c' }
a[b] = 123 // a["[object Object]"] = 123
a[c] = 456 // a["[object Object]"] = 456
console.log(a[b]) // 456 输出
附 29 题 5题