當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript handler.preventExtensions()用法及代碼示例


handler.preventExtensions() 方法用於捕獲 Object.preventExtensions 方法。當對象上的擴展被阻止時,無法添加新屬性。

用法

preventExtensions:function(target)

參數

target:目標對象。

返回值

返回一個布爾值。

瀏覽器支持

Chrome 49
Edge 12
Firefox 22
Opera 36

例子1

<script>
const proxy = new Proxy({}, {
  preventExtensions:function(target) {
   Object.preventExtensions(target);
    return !Object.isExtensible(target);
  }
});
document.writeln(Object.isExtensible(proxy));
//expected output:true
</script>

輸出:

true

例子2

<script>
const  proxy1 = new Proxy({}, {
  preventExtensions:function(target) {
  

    Object.preventExtensions(target);
    return !Object.isExtensible(target);
  }
});
document.writeln(Object.isExtensible(proxy1));
//expected output:true 
document.writeln('<br/>');
document.writeln(Object.preventExtensions(proxy1));
// Object.preventExtensions prevent of object to access.
//expected output:[object Object] 
document.writeln('<br/>');
document.writeln(Object.isExtensible(proxy1));
//expected output:false
</script>

輸出:

true 
[object Object] 
false

例子3

<script>
var x = {
  first:false
};
var y ={
  preventExtensions(target) {
    target.canEvolve = false;
    Object.preventExtensions(target);
    return true;
  }
};
var proxy = new Proxy(x, y);
document.writeln(x.first);
// expected output:false
Object.preventExtensions(proxy);
document.writeln("<br/>");
document.writeln(x.first);
// expected output:false
</script>

輸出:

false
 false






相關用法


注:本文由純淨天空篩選整理自 JavaScript handler.preventExtensions() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。