Object

概要

オブジェクトラッパーを生成します。

構文

new Object( [ value ] )

引数

value
任意の値。

説明

Object コンストラクタは、与えられた値のオブジェクトラッパーを生成します。値が nullundefined である場合、空のオブジェクトを生成して返します。それ以外の場合は、与えられた値と一致する型のオブジェクトを返します。

【訳注: 英語版記事の筆者】は以下のことがが正確で間違いないと思っています。コンストラクタを呼び出したとき、単純にそれらを返すのとは異なり、ホストオブジェクトの処理の提供がなされる点が、私が仕様から解釈できる唯一の相違点であるということです。ノンコンストラクタコンテキストにおいて呼び出されたときは、 Object は、同じように振舞います。

プロパティ

Object インスタンスから継承されているPropertiesについては、Object インスタンスのPropertiesを参照してください。
prototype
Object 型の全てのオブジェクトに対するプロパティの追加を可能にします。
Properties inherited from Function:
arity, caller, constructor, length, name

メソッド

Object インスタンスから継承されているMethodsについては、Object インスタンスのMethodsを参照してください。
create JavaScript 1.8.5 が必要
指定されたプロトタイプオブジェクトとプロパティから、新しいオブジェクトを生成します。
defineProperty JavaScript 1.8.5 が必要
与えられた記述子に基づき、名前のついたプロパティをオブジェクトに追加します。
defineProperties JavaScript 1.8.5 が必要
与えられた記述子に基づき、複数の名前のついたプロパティをオブジェクトに追加します。
getOwnPropertyDescriptor JavaScript 1.8.5 が必要
オブジェクトの指定された名前のプロパティの記述子を返します。
keys JavaScript 1.8.5 が必要
与えられたオブジェクト列挙可能なすべてのプロパティの名前を含む配列を返します。
getOwnPropertyNames JavaScript 1.8.5 が必要
与えられたオブジェクト列挙可能および列挙不可なすべてのプロパティの名前を含む配列を返します。
getPrototypeOf JavaScript 1.8.1 が必要
指定したオブジェクトのプロトタイプを返します。
preventExtensions JavaScript 1.8.5 が必要
オブジェクトに対するあらゆる拡張 (extension)を禁止します。
isExtensible JavaScript 1.8.5 が必要
オブジェクトに対する拡張 (extension)が許可されているかを判断します。
seal JavaScript 1.8.5 が必要
オブジェクトを封印 (seal)し、オブジェクトのプロパティの削除を禁止します。
isSealed JavaScript 1.8.5 が必要
オブジェクトが封印 (seal)されているかを判断します。
freeze JavaScript 1.8.5 が必要
オブジェクトを凍結 (freeze)し、オブジェクトのどのプロパティに対しても変更または削除ができないようにします。
isFrozen JavaScript 1.8.5 が必要
オブジェクトが凍結 (freeze)されているかを判断します。
Methods inherited from Function:
apply, call, toSource, toString

Object インスタンス

JavaScript におけるすべてのオブジェクトは Object に由来します。すべてのオブジェクトは Object.prototype からメソッドとプロパティを継承していますが、それらは上書きされている可能性があります。例えば、他のコンストラクタのプロトタイプは constructor プロパティを上書きしており、それぞれの持つ toString メソッドを提供しています。Object のプロトタイプオブジェクトへの変更は、その変更に関連するプロパティとメソッドがプロトタイプチェーンによってさらに上書きされている場合を除いて、すべてのオブジェクトに影響します。

プロパティ

constructor
オブジェクトのプロトタイプの生成元の関数への参照を返す
__count__ 廃止 JavaScript 1.8.5
ユーザーが定義したオブジェクト上の列挙可能な直接のプロパティの数を返す
__parent__ 廃止 JavaScript 1.8.5
オブジェクトのコンテクストへのポインタ
__proto__ 非標準
オブジェクトがインスタンスである際、プロトタイプとして使用しているオブジェクトへのポインタ

メソッド

constructor
オブジェクトのプロトタイプの生成元の関数への参照を返す
__count__ 廃止 JavaScript 1.8.5
ユーザーが定義したオブジェクト上の列挙可能な直接のプロパティの数を返す
__parent__ 廃止 JavaScript 1.8.5
オブジェクトのコンテクストへのポインタ
__proto__ 非標準
オブジェクトがインスタンスである際、プロトタイプとして使用しているオブジェクトへのポインタ

例: undefinednull 型を与えられた Object の使い方

次の例は、o に空の Object オブジェクトを代入します:

var o = new Object();
var o = new Object(undefined);
var o = new Object(null);

例: Boolean オブジェクトを生成するための Object の使い方

次の例は、oBoolean オブジェクトを代入します:

// o = new Boolean(true); と同じです
var o = new Object(true);
// to o = new Boolean(false); と同じです
var o = new Object(Boolean());

ブラウザ実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本サポート ? (Yes) ? ? ?
機能 Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
基本サポート ? (Yes) ? ? ?

 

タグ (2)

Contributors to this page: saneyuki_s, Yuichirou, Mgjbot, ethertank, yyss, Potappo, Okome
Last updated by: ethertank,
Last reviewed by: ethertank,