JS ConstructObject
出典: MDC
新たにJavaScriptオブジェクトを生成し、コンストラクタを呼び出します。
[編集] 構文
JSObject * JS_ConstructObject(JSContext *cx, JSClass *clasp, JSObject *proto, JSObject *parent);
| Name | Type | Description |
|---|---|---|
cx |
JSContext * |
新たなオブジェクトを配置するコンテキスト |
proto |
JSObject * |
クラスとなるプロトタイプオブジェクトへのポインタ |
parent |
JSObject * |
新たなオブジェクトの __parent__ プロパティに指定するオブジェクトへのポインタ |
[編集] 解説
JS_ConstructObjectは、与えられたクラス、プロトタイプ、親オブジェクト、コンストラクタ関数をもとに新たなオブジェクトのインスタンスを生成する関数です。cxには、新たなオブジェクトを配置するランタイムと結び付けられたコンテキストへのポインタを指定します。claspには、ファイナライズ処理などの内部関数が定義された既存クラスへのポインタを指定します。protoは、新たなオブジェクトのプロトタイプとなるオブジェクトへのポインタを指定する引数です。
自分自身をプロトタイプオブジェクトにするには、protoにNULLを指定してください。このとき、claspがプロトタイプを定義している場合には、JS_ConstructObjectは新たなオブジェクトのプロトタイプにそれを用います。定義していない場合は、空オブジェクトスタブをプロトタイプとします。
parentには、新規オブジェクトの親プロパティとなるオブジェクトへのポインタを指定します。この引数はオプションであり、parentにNULLを指定することで親プロパティを持たないオブジェクトになります。
JS_ConstructObjectが成功したとき、新たに生成されたオブジェクトへのポインタをその返値とします。失敗したときはNULLを返します。
[編集] 関連項目
LXR で JS_ConstructObject を ID 検索
JS_DefineObject, JS_GetFunctionObject, JS_NewArrayObject, JS_NewObject, JS_ValueToObject