如果 [[Prototype]] 成功更改,handler.setPrototypeOf 方法返回一个布尔值 true。否则,它将返回false。它是 Object.setPrototypeOf() 的陷阱。
用法
setPrototypeOf:function(target, prototype)
参数
target:目标对象。
prototype:对象的新原型或为空。
返回值
返回布尔类型值。
浏览器支持
Chrome | 兼容性未知 |
Edge | 兼容性未知 |
Firefox | 49 |
Opera | 兼容性未知 |
例子1
<script>
var pro = { f:13}
var proxy = new Proxy(pro, {
setPrototypeOf(target, newProto) {
return newPrototype in target;
}
});
document.writeln('f' in proxy);
//expected output:true
</script>
输出:
true
例子2
<script>
var soo={
foo:1
}
var proxy = new Proxy(soo, {
setPrototypeOf(target, newProto) {
}
});
document.writeln('a' in proxy);
//expected output:false
</script>
输出:
false
例子3
<script>
var xyz = new Proxy({}, {
setPrototypeOf(target, newProto) {
if(key == "a") return true;
return ;false
}
}
)
var first= ("f" in xyz)
var last = ("g" in xyz)
document.write(""+first)
//expected output:false
document.write('<br/>');
document.write("" +last)
//expected output:false
</script>
输出:
false false
相关用法
- JavaScript handler.has()用法及代码示例
- JavaScript handler.get()用法及代码示例
- JavaScript handler.isExtensible()用法及代码示例
- JavaScript handler.deleteProperty()用法及代码示例
- JavaScript handler.construct()用法及代码示例
- JavaScript handler.getPrototypeOf()用法及代码示例
- JavaScript handler.getOwnPropertyDescriptor()用法及代码示例
- JavaScript handler.apply()用法及代码示例
- 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.setPrototypeOf() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。