JavaScript Object.defineProperty
示例
它允许我们使用属性描述符在现有对象中定义属性。
var obj = { }; Object.defineProperty(obj, 'foo', { value: 'foo' }); console.log(obj.foo);
控制台输出
富
Object.defineProperty可以使用以下选项来调用:
Object.defineProperty(obj, 'nameOfTheProperty', { value: valueOfTheProperty, writable: true, //如果为false,则该属性为只读 configurable : true, //true表示该属性可以在以后更改 enumerable : true //true表示可以枚举属性,例如在for..in循环中 });
Object.defineProperties允许您一次定义多个属性。
var obj = {}; Object.defineProperties(obj, { property1: { value: true, writable: true }, property2: { value: 'Hello', writable: false } });