禁止擴展
不能添加新的屬性
var obj = {
name: 'u14e'
};
Object.preventExtensions(obj);
Object.isExtensible(obj); // false
對象封印
對象不可擴展且所有屬性都不可配置
即不僅不能添加新屬性,也不能刪除屬性或改變其類型(從數據屬性變成訪問器屬性或相反)
只能讀寫它的屬性
var obj = {
name: 'u14e'
}
Object.seal(obj);
Object.isSealed(obj); // true
obj.name = 'u148';
console.log(obj.name); // 'u148'
對象凍結
不能添加或刪除屬性,不能改變數據類型,也不能寫入任何數據類型
只能讀取屬性
var obj = {
name: 'u14e'
};
Object.freeze(obj);
Object.isFrozen(obj); // true