JavaScript/Object/isSealed
< JavaScript | Object
Object.isSealed()
は、指定されたオブジェクトがシールされているかどうかを判定するメソッドです。このメソッドは、オブジェクトのプロパティの追加・削除が不可能な状態かどうかを確認します[1]。
構文
編集Object.isSealed(obj)
obj
: シールされているかどうかを判定する対象のオブジェクト。
例
編集オブジェクトがシールされているかどうかを判定するプログラム
編集以下のプログラムは、Object.isSealed()
を使用してオブジェクトがシールされているかどうかを判定します。
const obj = {}; console.log(Object.isSealed(obj)); // false Object.seal(obj); console.log(Object.isSealed(obj)); // true
このプログラムでは、Object.isSealed()
を使用して obj
オブジェクトがシールされているかどうかを判定しています。最初は obj
はシールされていないため false
が返されますが、Object.seal()
を使用してシールした後は true
が返されます。
凍結されたオブジェクトがシールされているかどうかを判定するプログラム
編集以下のプログラムは、Object.isSealed()
を使用して凍結されたオブジェクトがシールされているかどうかを判定します。
const obj = {}; Object.freeze(obj); console.log(Object.isSealed(obj)); // true
このプログラムでは、Object.isSealed()
を使用して凍結された obj
オブジェクトがシールされているかどうかを判定しています。凍結されたオブジェクトはシールされた状態を含むため、true
が返されます。
注意点
編集- シール状態: デフォルトでは、すべてのオブジェクトはシールされていません。
- シールの条件: オブジェクトがシールされているとは、そのオブジェクトが拡張不可で、すべてのプロパティが設定不可である状態を指します。
- 非オブジェクト: 非オブジェクト(例:
null
やundefined
)を指定すると、TypeError
が発生します。
脚註
編集- ^ これは、オブジェクトがシールされているかどうかを判定するために使用されます。
外部リンク
編集