JavaScript object

オブジェクト (JavaScript)

仕様書

意味

[1]

An object is a member of the type Object. It is an unordered collection of properties each of which contains a primitive value, object, or function. A function stored in a property of an object is called a method.

[2]

ECMAScript is object-based: basic language and host facilities are provided by objects, and an ECMAScript program is a cluster of communicating objects. An ECMAScript object is an unordered collection of properties each with zero or more attributes that determine how each property can be used ...; an object is a member of the remaining built-in type Object; and a method is a function associated with an object via a property.

状態

[4]

大域環境
オブジェクトが関連付けられている大域環境。すなわち本オブジェクトが作成された大域環境

[[Call]]
あり ES3 15.2.1.1
[[CanPut]]
標準 ES3 18.6.2.3
[[Class]]
"Function" ES3 15
[[Construct]]
あり ES3 15.2.2.1
[[Default]]
標準 ES3 18.6.2.6
[[Delete]]
標準 ES3 18.6.2.5
[[Get]]
標準 ES3 18.6.2.1
[[HasProperty]]
標準 ES3 18.6.2.4
[[Prototype]]
Functionプロトタイプ・オブジェクト ES3 15.2.3
[[Put]]
標準 ES3 18.6.2.2

特性

[3]

lengthECMA 標準ES3
prototypeECMA 標準ES3

Object プロトタイプ・オブジェクト

内部特性

[6]

[[CanPut]]
標準 ES3 18.6.2.3
[[Class]]
"Object" ES3 15.2.4
[[Default]]
標準 ES3 18.6.2.6
[[Delete]]
標準 ES3 18.6.2.5
[[Get]]
標準 ES3 18.6.2.1
[[HasProperty]]
標準 ES3 18.6.2.4
[[Prototype]]
null ES3 15.2.3
[[Put]]
標準 ES3 18.6.2.2

特性

[7]

constructorECMA 標準ES3
hasOwnPropertyECMA 標準ES3
isPrototypeOfECMA 標準ES3
propertyIsEnumerableECMA 標準ES3
valueOfECMA 標準ES3
toLocaleStringECMA 標準ES3
toStringECMA 標準ES3

オブジェクト (JSON)

[9] JSON におけるオブジェクト (object) は、 零個以上の名前と値の組の順序を持たない集成です。 ただし、名前は文字列であり、値は文字列数値booleannullオブジェクト配列のいずれかです。

オブジェクト (Web IDL)

[11] オブジェクトは、 プラットフォームオブジェクト利用者オブジェクトか、 どちらでもないものです >>10

[12] 初期オブジェクトもあります。

歴史

[13] Write structured clone algorithm in terms of ECMAScript · whatwg/html@bfb960c ( 版) https://github.com/whatwg/html/commit/bfb960c938580c95e77365e614218b952f96375b

[14] Only clone own properties of ordinary objects and arrays · whatwg/html@31ef428 ( 版) https://github.com/whatwg/html/commit/31ef4285935eb22516fc054c42db6a0dc36d580b

[15] Gloss Web IDL "object" instead of "Object" · whatwg/html@ea7db14 ( 版) https://github.com/whatwg/html/commit/ea7db14e4d8a547811777f12abe81e02ea5b10e9

[16] Breaking: refactor structured clone into serialize/deserialize (domenic著, ) https://github.com/whatwg/html/commit/97d644c97335956610a31e8ad98d1a388c063e84

[17] Add an algorithm to create a platform object (Ms2ger著, ) https://github.com/heycam/webidl/commit/8e1b52942525e9135885eba8aa68c028d2c6a5be

[18] Add an algorithm to create a platform object. by Ms2ger · Pull Request #635 · heycam/webidl () https://github.com/heycam/webidl/pull/635