Object.defineProperty() 方法直接在对象上定义一个新属性并返回该对象。要更改标志,我们可以使用 Object.defineProperty。我们不能把它改回来,因为定义属性对不可配置的属性不起作用。
用法:
Object.defineProperty(obj, prop, descriptor)
参数
Obj:在其上定义属性的对象。
Prop:要定义或修改的属性的名称。
描述符:正在定义或修改的属性的描述符。
返回:
此方法返回传递给函数的对象。
浏览器支持:
Chrome | Yes |
Edge | Yes |
Firefox | 1.5 |
Opera | Yes |
例子1
const object1 = {};
Object.defineProperty(object1, 'property1', {
value:22, } );
object1.property1;
// throws an error in strict mode
console.log(object1.property1);
输出:
22
例子2
const object1 = {};
Object.defineProperty(object1, 'property1', {
value:42,
value:52,
value:542,
});
object1.property1 = 177;
// throws an error in strict mode
console.log(object1.property1);
输出:
542
例子3
const object1 = {};
Object.defineProperty(object1, 'property1', {
value:2,
value:4,
value:4+13,
});
object1.property1 ;
console.log(object1.property1);
输出:
17
相关用法
- JavaScript Object.defineProperties()用法及代码示例
- JavaScript Object.assign()用法及代码示例
- JavaScript Object.seal()用法及代码示例
- JavaScript Object.getOwnPropertyDescriptors()用法及代码示例
- JavaScript Object.setPrototypeOf()用法及代码示例
- JavaScript Object.getOwnPropertySymbols()用法及代码示例
- JavaScript Object.freeze()用法及代码示例
- JavaScript Object.preventExtensions()用法及代码示例
- JavaScript Object.getOwnPropertyDescriptor()用法及代码示例
- JavaScript Object.getOwnPropertyNames()用法及代码示例
- JavaScript Object.getPrototypeOf()用法及代码示例
- JavaScript Object.is()用法及代码示例
- JavaScript Object.values()用法及代码示例
- JavaScript Object.create()用法及代码示例
- JavaScript Object.entries()用法及代码示例
- JavaScript Uint8Array.of()用法及代码示例
- JavaScript BigInt.prototype.toString()用法及代码示例
- JavaScript DataView.getInt16()用法及代码示例
- JavaScript Symbol.keyFor()用法及代码示例
- JavaScript handler.has()用法及代码示例
注:本文由纯净天空筛选整理自 JavaScript Object.defineProperty() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。