Object.defineProperty 在 Node.js
Object.defineProperty in Node.js
我是 运行 浏览器控制台中的以下代码以及终端中的 node.js v9.11.1
:
let name = {};
Object.defineProperty(name, 'last', {value: 'Doe'});
console.log(name);
浏览器控制台正常运行并输出{ last: 'Doe' }
。但是在带有 node.js
的终端中,它失败并输出一个空白对象,{}
.
这可能是什么问题?
属性 描述符的属性之一是 enumerable
,它具有默认值 false
。如果属性是不可枚举的,Node.js选择不显示属性,就是这样。
你可以改变那个位然后试试这个
let name = {};
Object.defineProperty(name, 'last', {
value: 'Doe',
enumerable: true
});
console.log(name);
我是 运行 浏览器控制台中的以下代码以及终端中的 node.js v9.11.1
:
let name = {};
Object.defineProperty(name, 'last', {value: 'Doe'});
console.log(name);
浏览器控制台正常运行并输出{ last: 'Doe' }
。但是在带有 node.js
的终端中,它失败并输出一个空白对象,{}
.
这可能是什么问题?
属性 描述符的属性之一是 enumerable
,它具有默认值 false
。如果属性是不可枚举的,Node.js选择不显示属性,就是这样。
你可以改变那个位然后试试这个
let name = {};
Object.defineProperty(name, 'last', {
value: 'Doe',
enumerable: true
});
console.log(name);