1const animals = {}; 2let dog = { emoji: '🐶' } 3let cat = { emoji: '🐈' } 4 5animals[dog] = { ...dog, name: "Mara" } 6animals[cat] = { ...cat, name: "Sara" } 7 8console.log(animals[dog])
本题为"单选题"
参考答案:
正确选项:B:{ emoji: "🐈", name: "Sara" }
对象的键会被转换为字符串。
因为 dog 的值是一个对象, animals[dog] 实际上意味着我们创建了一个叫做 "object Object" 的属性来代表新的对象。 animals["object Object"] 现在等于 { emoji: "🐶", name: "Mara"}。
cat 也是一个对象,animals[cat] 实际上意味着我们在用新的cat的属性覆盖 animals[``"``object Object``"``] 的值。
打印 animals[dog],实际上是animals["object Object"],这是因为转化dog对象为一个字符串结果 "object Object" ,所以返回 { emoji: "🐈", name: "Sara" }。
最近更新时间:2021-07-03

题库维护不易,您的支持就是我们最大的动力!