我在玩下面的javascript代码。了解后Object.defineProperty(),我正面临一个奇怪的问题。当我尝试在浏览器或VS代码中执行以下代码时,输出与预期不符,而如果我尝试对代码进行调试,则输出正确
当我调试代码并评估配置文件时,我可以name & age在对象中看到该属性,但是在输出时,它仅显示该name属性
//Code Snippet
let profile = {
name: 'Barry Allen',
}
// I added a new property in the profile object.
Object.defineProperty(profile, 'age', {
value: 23,
writable: true
})
console.log(profile)
console.log(profile.age)
现在这里的预期输出应该是
{name: "Barry Allen", age: 23}
23
但我得到的输出为。请注意,我能够访问age之后定义的属性。我不确定为什么console.log()会这样。
{name: "Barry Allen"}
23
猛跑小猪
慕丝7291255
绝地无双
相关分类