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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。