Object.defineProperty()介绍
Object.defineProperty()
The static method Object.defineProperty() defines a new property directly on an object, or modifies an existing property on an object, and returns the object.
Object.defineProperty()是Object类的一个静态方法,往对象上定义新属性或修改已存在的属性,返回修改后的对象。
Note: You call this method directly on the Object constructor rather than on an instance of type Object.
注:可以直接在Object类上调用该方法,不用通过对象实例调用
Description
This method allows a precise addition to or modification of a property on an object. Normal property addition through assignment creates properties which show up during property enumeration (for…in loop or Object.keys method), whose values may be changed, and which may be deleted. This method allows these extra details to be changed from their defaults. By default, values added using Object.defineProperty() are immutable.
该方法允许精确添加或修改一个对象的属性。通过赋值添加的普通属性是可遍历的(通过for…in循环或Object.keys方法),并且属性值可以被修改和删除。该方法可以修改这些细节的默认值。默认情况下,通过Object.defineProperty()添加的属性值是不能被修改的。