如何在对象上创建不可枚举属性,使其不会显示在for中。。在循环中,但在其他情况下可以使用Object.properties语法访问?
您可以将Object.defineProperty
用于任务。除了enumerable
,您还可以设置writable
和configurable
(可删除)属性。
var obj = {a: 1};
Object.defineProperty(obj, 'b', {
value: 2,
enumerable: false,
});
console.log(obj.b); //2
for (var key in obj) {
alert(key); //just 'a'
}