📜  JavaScript Object preventExtensions()方法

📅  最后修改于: 2020-10-25 12:02:44             🧑  作者: Mango

JavaScript Reflect.preventExtensions()方法

使用静态Reflect.preventExtensions()方法可防止将来对该对象进行扩展。此方法与Object.preventExtensions()方法相同。

句法:

Reflect.preventExtensions(obj)

参数:

对象:它是防止扩展的对象。

返回值:

如果成功设置了目标以防止扩展,则此方法返回true。否则,此方法返回false。

异常处理:

如果目标不是Object,则为TypeError。

浏览器支持:

Chrome 49
Edge 12
Firefox 42
Opera 36

例子1

const u = {};
console.log ( Reflect.isExtensible ( u ) ); 
Reflect.preventExtensions ( u );
console.log ( Reflect.isExtensible ( u ) ); 

输出:

true
false

例子2

const obj = {"p":3,"q":4};
Reflect.preventExtensions(obj);
console.log ( obj.hasOwnProperty ( "p" ) ); 
delete obj.p;
console.log ( obj.hasOwnProperty ( "q" ) );

输出:

true
true

例子3

const uu = {};
Reflect.preventExtensions(uu);
console.log(
Reflect.isExtensible(uu)
); 
// add a property
uu.pp = 3;
console.log(
    uu.hasOwnProperty ("pp")
);

输出:

false
false