选择题1566/1620输出是什么?

1const person = { name: "Lydia" }; 2 3Object.defineProperty(person, "age", { value: 21 }); 4 5console.log(person); 6console.log(Object.keys(person));
难度:
2021-07-02 创建

本题为"单选题"

参考答案:

正确选项:B:{ name: "Lydia", age: 21 }, ["name"]

通过defineProperty方法,我们可以给对象添加一个新属性,或者修改已经存在的属性。而我们使用defineProperty方法给对象添加了一个属性之后,属性默认为 不可枚举(not enumerable). Object.keys方法仅返回对象中 可枚举(enumerable) 的属性,因此只剩下了"name". 用defineProperty方法添加的属性默认不可变。你可以通过writable, configurableenumerable属性来改变这一行为。这样的话, 相比于自己添加的属性,defineProperty方法添加的属性有了更多的控制权。

最近更新时间:2021-07-03

赞赏支持

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