2016-09-25 2 views

答えて

3

[[Extensible]] internal slotでは、コードから直接アクセスできません(もちろん、Object.isExtensibleReflect.isExtensibleでアクセス可能です)。

リンクから:

すべての通常のオブジェクトプロパティは、オブジェクトに追加することができるかどうかを制御するブール値[拡張]内部スロットを有しています。 [[Extensible]]内部スロットの値がの場合、偽の場合、追加のプロパティがオブジェクトに追加されないことがあります。また、[[Extensible]]がの場合、偽のオブジェクトの[Prototype]の内部スロットの値は変更できません。オブジェクトの[Extensible]]内部スロットの値がに設定されていれば、,に変更されない可能性があります。

内部スロットはプロパティと少し似ていますが、継承されず、プログラムコードから(直接的に)アクセスできません。 Object Internal Methods and Internal Slots

内部スロットは、オブジェクトに関連付けられ、さまざまなECMAScript仕様アルゴリズムで使用される内部状態に対応します。内部スロットはオブジェクトプロパティではなく、継承されません。特定の内部スロット仕様に応じて、そのような状態は、任意のECMAScript言語タイプまたは特定のECMAScript仕様タイプ値の値で構成されてもよい。明示的に指定されていない限り、内部スロットはオブジェクトの作成プロセスの一部として割り当てられ、オブジェクトに動的に追加されないことがあります。特記のない限り、内部スロットの初期値は未定義値です。この仕様内のさまざまなアルゴリズムは、内部スロットを持つオブジェクトを作成します。しかし、ECMAScript言語は、内部スロットをオブジェクトに関連付ける直接の方法を提供していません。

関連する問題