handler.getPrototypeOf() 方法是內部方法的陷阱。如果 target 不可擴展,則此方法返回與 Object.getPrototypeOf(target) 相同的值。
用法
getPrototypeOf(target)
參數
target:目標對象。
返回值
此方法返回一個對象或 null。
瀏覽器支持
Chrome | NO |
Edge | NO |
Firefox | 49 |
Opera | NO |
例子1
const obj = {};
const proto = {};
const hag = {
getPrototypeOf(target) {
document.writeln (target === obj);
document.writeln (this === hag);
return proto;
}
};
const p = new Proxy(obj, hag);
document.writeln(Object.getPrototypeOf(p) === proto);
輸出:
true true true
例子2
var obj = {};
var p = new Proxy(obj, {
getPrototypeOf(target) {
return Array.prototype;
}
});
document.write(
p instanceof Array
);
輸出:
true
例子3
const Prototype = {
eyeCount:32
};
const handler = {
getPrototypeOf(target) {
return Prototype;
}
};
const obj = new Proxy(Prototype, handler);
document.writeln(Object.getPrototypeOf(obj) == Prototype);
輸出:
true
相關用法
- JavaScript handler.get()用法及代碼示例
- JavaScript handler.getOwnPropertyDescriptor()用法及代碼示例
- JavaScript handler.has()用法及代碼示例
- JavaScript handler.isExtensible()用法及代碼示例
- JavaScript handler.deleteProperty()用法及代碼示例
- JavaScript handler.construct()用法及代碼示例
- JavaScript handler.apply()用法及代碼示例
- JavaScript handler.setPrototypeOf()用法及代碼示例
- JavaScript handler.ownKeys()用法及代碼示例
- JavaScript handler.defineProperty()用法及代碼示例
- 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.getPrototypeOf() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。