handler.defineProperty() 方法可以定義新的屬性。它還可以直接修改對象上的現有屬性。它是 Object.defineProper() 的陷阱。此方法可用於兩種情況。
- 當我們想要確保 getter 和 setter 的跨瀏覽器支持時。
- 每當我們想要定義自定義屬性訪問器時。
用法
defineProperty:function(target, property, descriptor)
參數
目標:目標對象。
屬性:檢索到的屬性描述。
描述符:正在定義或修改的屬性。
返回值
此方法返回一個布爾值
瀏覽器支持
Chrome | 49 |
Edge | 12 |
Firefox | 18 |
Opera | 36 |
例子1
var target = {}
target.foo = 'bar'
document.writeln(Object.getOwnPropertyDescriptor(target, 'foo'))
輸出:
[object Object]
例子2
var xyz = {};
var proxy = new Proxy(xyz, {
defineProperty:function(target, name, propertyDescriptor) {
document.writeln('in defineProperty');
return Object.defineProperty(target, name, propertyDescriptor);
}
});
Object.defineProperty(proxy, 'bar', {} );
輸出:
in defineProperty
例子3
var xyz ={};
var hu = {};
var proxy = new Proxy(xyz, {
defineProperty:function(target, name, propertyDescriptor) {
document.writeln('Learn Java Script');
return Object.defineProperty(target, name, propertyDescriptor);
}
});
var pro= new Proxy(hu, {
defineProperty:function(target, name, propertyDescriptor) {
document.writeln('Proxt Method ');
return Object.defineProperty(target, name, propertyDescriptor);
}
});
Object.defineProperty(proxy, 'bar', {} );
Object.defineProperty(pro, 'hug', {} );
輸出:
Learn Java Script Proxt Method
相關用法
- JavaScript handler.deleteProperty()用法及代碼示例
- JavaScript handler.has()用法及代碼示例
- JavaScript handler.get()用法及代碼示例
- JavaScript handler.isExtensible()用法及代碼示例
- JavaScript handler.construct()用法及代碼示例
- JavaScript handler.getPrototypeOf()用法及代碼示例
- JavaScript handler.getOwnPropertyDescriptor()用法及代碼示例
- JavaScript handler.apply()用法及代碼示例
- JavaScript handler.setPrototypeOf()用法及代碼示例
- JavaScript handler.ownKeys()用法及代碼示例
- JavaScript handler.preventExtensions()用法及代碼示例
- JavaScript Uint8Array.of()用法及代碼示例
- JavaScript BigInt.prototype.toString()用法及代碼示例
- JavaScript DataView.getInt16()用法及代碼示例
- JavaScript Symbol.keyFor()用法及代碼示例
- JavaScript JSON.stringify()用法及代碼示例
- JavaScript Symbol.split屬性用法及代碼示例
- JavaScript Function.displayName屬性用法及代碼示例
- JavaScript TypedArray reverse()用法及代碼示例
- JavaScript String slice()用法及代碼示例
注:本文由純淨天空篩選整理自 JavaScript handler.defineProperty() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。