JavaScript中的handler.isExtensible()方法是Object.isExtensible()方法的陷阱,它返回布尔值。
用法:
const p = new Proxy(target, { isExtensible:function(target) { } });
参数:此方法接受上述和以下描述的单个参数:
- target:此参数是目标对象。
返回值:此方法返回一个布尔值。
以下示例说明了JavaScript中的handler.isExtensible()方法:
范例1:
<script>
const monster1 = {
canEvolve:true
};
const handler1 = {
isExtensible(target) {
return Reflect.isExtensible(target);
},
preventExtensions(target) {
target.canEvolve = false;
return Reflect.preventExtensions(target);
}
};
const proxy1 = new Proxy(monster1, handler1);
document.writeln(Object.isExtensible(proxy1));
document.writeln("<br>");
document.writeln(monster1.canEvolve);
document.writeln("<br>");
document.writeln(Object.preventExtensions(proxy1));
document.writeln("<br>");
document.writeln(Object.isExtensible(proxy1));
document.writeln("<br>");
document.writeln(monster1.canEvolve);
</script>
输出:
true true [object Object] false false
范例2:
<script>
const p = new Proxy({}, {
isExtensible:function(target) {
console.log('isExtensible method');
return true;
}
});
console.log(Object.isExtensible(p));
var a = {
canEvolve:true
};
var b = {
isExtensible(target) {
return true;
},
};
const proxy1 = new Proxy(a, b);
console.log(Object.isExtensible(proxy1));
</script>
输出:
"isExtensible method" true true
支持的浏览器:handler.isExtensible()方法支持的浏览器如下:
- 谷歌浏览器
- Firefox
- Opera
- Safari
- Edge
相关用法
- Javascript padStart()用法及代码示例
- Javascript Int8Array from()用法及代码示例
- Javascript Reflect.get()用法及代码示例
- Javascript Reflect.has()用法及代码示例
- Javascript Unit16Array.from()用法及代码示例
- Javascript handler.get()用法及代码示例
- Javascript Int16Array from()用法及代码示例
- Javascript Uint8Array.from()用法及代码示例
- Javascript hasOwnProperty()用法及代码示例
- Javascript compile()用法及代码示例
- Javascript Uint32Array from()用法及代码示例
- Javascript Array from()用法及代码示例
- Javascript Array.from()用法及代码示例
- Javascript handler.has()用法及代码示例
- Javascript exec()用法及代码示例
注:本文由纯净天空筛选整理自SHUBHAMSINGH10大神的英文原创作品 JavaScript | handler.isExtensible() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。