Object.isExtensible

JavaScript 1.8.5 引入

概述

判断一个对象是否是可扩展的(是否可以在它身上添加新的属性).

Method of Object
Implemented in JavaScript 1.8.5
ECMAScript Edition ECMAScript 5th Edition

语法

Object.isExtensible(obj)

参数

obj
需要检查的对象.

描述

一个对象通常是可扩展的,就是说:它们可以拥有新的属性,以及它们的__proto__属性可以被更改. Object.preventExtensions, Object.seal,或者Object.freeze方法都可以让一个对象变的不可扩展.

例子

// 新对象默认是可扩展的.
var empty = {};
assert(Object.isExtensible(empty) === true);

// ...可以变的不可扩展.
Object.preventExtensions(empty);
assert(Object.isExtensible(empty) === false);

// 密封对象是不可扩展的.
var sealed = Object.seal({});
assert(Object.isExtensible(sealed) === false);

// 冻结对象也是不可扩展.
var frozen = Object.freeze({});
assert(Object.isExtensible(frozen) === false);

浏览器兼容性

Feature Firefox (Gecko) Chrome Internet Explorer Opera Safari
Basic support 4 (2.0) 6 9 12 5.1
Feature Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
Basic support ? ? ? ? ?

相关链接

Document Tags and Contributors

Contributors to this page: ziyunfei
最后编辑者: ziyunfei,