猿问

如何判断是否可枚举

// getFoo is a property which isn't enumerablevar myObj = Object.create({}, {  getFoo: {    value: function () { return this.foo; }
  } 
});
myObj.foo = 1;console.log(Object.keys(myObj)); // console: ['foo']

为什么GetFoo是一个不的属性


30秒到达战场
浏览 690回答 2
2回答

郎朗坤

判断属性是否可枚举可以用 obj.propertyIsEnumerable(prop) 链接描述Object.create()的第二个参数和Object.defineProperties()的第二个参数作用是类似的,定义其可枚举属性或修改的属性描述符的对象在第二个参数中,你没有指定enumerable,而默认值false,所以是getFoo是一个不可枚举的属性。Object.create()Object.defineProperties()

拉风的咖菲猫

Object.getOwnPropertyDescriptor
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答