JavaScript Object.isFrozen() 檢查對象是否被凍結。
無法再更改凍結的對象。凍結對象可防止:
- 新屬性被添加到對象。
- 要從對象中刪除的現有屬性。
- 更改現有屬性的可枚舉性、可配置性或可寫性。
- 更改現有對象屬性和原型的值。
用法:
Object.isFrozen(obj)
isFrozen()
方法是靜態方法,使用Object
類名調用。
isFrozen()參數
isFrozen()
方法包含:
obj
- 應該檢查的對象。
isFrozen() 的返回值
- 返回
Boolean
指示給定對象是否被凍結。
示例:使用 isFrozen()
// new objects are extensible, so not frozen
console.log(Object.isFrozen({ name: "JavaScript" })); // false
// preventing extensions only does not make frozen
// property is still configurable
let obj = { a: 1 };
Object.preventExtensions(obj);
console.log(Object.isFrozen(obj)); // false
// deleting property
delete obj.a;
console.log(Object.isFrozen(obj)); // true -> vacuously frozen
let newObj = { b: 2 };
// make non-extensible
Object.preventExtensions(newObj);
// make non-writable
Object.defineProperty(newObj, "b", {
writable: false,
});
// properties are still configurable
console.log(Object.isFrozen(newObj)); // false
// using freeze()
let frozen = { 65: "A" };
Object.freeze(frozen);
console.log(Object.isFrozen(frozen)); // true
輸出
false false true false true.
相關用法
- JavaScript Object.isPrototypeOf()用法及代碼示例
- JavaScript Object.isExtensible()用法及代碼示例
- JavaScript Object.is()用法及代碼示例
- JavaScript Object.isSealed()用法及代碼示例
- JavaScript Object.assign()用法及代碼示例
- JavaScript Object.getPrototypeOf()用法及代碼示例
- JavaScript Object.seal()用法及代碼示例
- JavaScript Object.getOwnPropertyDescriptors()用法及代碼示例
- JavaScript Object.setPrototypeOf()用法及代碼示例
- JavaScript Object.getOwnPropertySymbols()用法及代碼示例
- JavaScript Object.defineProperties()用法及代碼示例
- JavaScript Object.freeze()用法及代碼示例
- JavaScript Object.preventExtensions()用法及代碼示例
- JavaScript Object.fromEntries()用法及代碼示例
- JavaScript Object.getOwnPropertyDescriptor()用法及代碼示例
- JavaScript Object.getOwnPropertyNames()用法及代碼示例
- JavaScript Object.propertyIsEnumerable()用法及代碼示例
- JavaScript Object.defineProperty()用法及代碼示例
- JavaScript Object.keys()用法及代碼示例
- JavaScript Object.values()用法及代碼示例
注:本文由純淨天空篩選整理自 Javascript Object.isFrozen()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。