📅  最后修改于: 2020-10-25 12:02:44             🧑  作者: Mango
使用静态Reflect.preventExtensions()方法可防止将来对该对象进行扩展。此方法与Object.preventExtensions()方法相同。
Reflect.preventExtensions(obj)
对象:它是防止扩展的对象。
如果成功设置了目标以防止扩展,则此方法返回true。否则,此方法返回false。
如果目标不是Object,则为TypeError。
Chrome | 49 |
Edge | 12 |
Firefox | 42 |
Opera | 36 |
const u = {};
console.log ( Reflect.isExtensible ( u ) );
Reflect.preventExtensions ( u );
console.log ( Reflect.isExtensible ( u ) );
输出:
true
false
const obj = {"p":3,"q":4};
Reflect.preventExtensions(obj);
console.log ( obj.hasOwnProperty ( "p" ) );
delete obj.p;
console.log ( obj.hasOwnProperty ( "q" ) );
输出:
true
true
const uu = {};
Reflect.preventExtensions(uu);
console.log(
Reflect.isExtensible(uu)
);
// add a property
uu.pp = 3;
console.log(
uu.hasOwnProperty ("pp")
);
输出:
false
false