Object.isExtensible()
方法用于检测指定对象是否可扩展。
语法:
Object.isExtensible(o);
类型声明:
interface Object {isExtensible(o: any): boolean;}
参数说明:
参数 | 说明 | 类型 |
---|---|---|
o | 指定用于检测的对象 | object |
返回值:
返回 Boolean 类型的值表示用于检测的对象是否可扩展。
默认情况下,对象是可扩展的:即可以为他们添加新的属性。
Object.preventExtensions、Object.seal 或 Object.freeze 方法都可以标记一个对象为不可扩展(non-extensible)。
let foo = {a: 1,};console.log(Object.isExtensible(foo));// truefoo.b = 2;console.log(foo);// {a: 1, b: 2}console.log(Object.preventExtensions(foo));// { a: 1, b: 2}// 由于对象 foo 禁止扩展,所以该赋值语句静默失败foo.c = 3;console.log(Object.isExtensible(foo));// falseconsole.log(foo);// { a: 1, b: 2}