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 が返されます。

注意点

編集
  • シール状態: デフォルトでは、すべてのオブジェクトはシールされていません。
  • シールの条件: オブジェクトがシールされているとは、そのオブジェクトが拡張不可で、すべてのプロパティが設定不可である状態を指します。
  • 非オブジェクト: 非オブジェクト(例: nullundefined)を指定すると、TypeError が発生します。

脚註

編集
  1. ^ これは、オブジェクトがシールされているかどうかを判定するために使用されます。

外部リンク

編集