内容へ移動
Cat Paw Software
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
トレース:
•
mysql
•
applescript
javascript:object
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== JavaScriptのオブジェクト ====== * ネイティブオブジェクト - ECMAScriptの実装で用意されているオブジェクト * 標準ネイティブオブジェクト - ECMAScriptの仕様で決められているネイティブオブジェクト * ビルトインオブジェクト - ECMAScriptの実装で用意され、実行環境から独立して最初から存在するオブジェクト。ネイティブオブジェクトに等しい * 標準ビルトインオブジェクト - ECMAScriptの仕様で定義されているビルトインオブジェクト。標準ネイティブオブジェクトと同義 * ホストオブジェクト - ECMAScriptのホスト環境によって作成されるオブジェクト、プログラムの実行環境に依存する。 たとえばDOMオブジェクトはブラウザという実行環境に依存するため、ネイティブオブジェクトではなく、ホストオブジェクトである。 ===== Objectコンストラクタ ===== new演算子によって新しいインスタンスを作成する。 <code javascript> // 引数無し、null、undefinedの場合→新しいオブジェクト生成 var obj1 = new Object(); // 引数がオブジェクト→引数をそのまま返す var obj2 = new Object(obj1); // obj1 === obj2 var str1 = new String("hoge"); var str2 = new Object(str1); // str2 == "hoge" && str1 === str2 // 引数が文字列や数値→ToObjectして返す var obj3 = new Object("fuga"); // obj3 instanceof String var obj4 = new Object(100); // obj4 instanceof Number var obj5 = new Object(true); // obj5 instanceof Boolean </code> ===== メソッドとプロパティ ===== メソッドとプロパティは、生成したオブジェクトにいつでも追加できる。 <code javascript> var obj = new Object(); // プロパティ追加 obj.hoge = "ホゲ"; print(obj.hoge); // ホゲ obj.fuga= "ホゲ"; print(obj.fuga); // ホゲ // メソッド追加 obj.getHogeFuga = function() { return this.hoge + this.fuga } print(obj.getHogeFuga()); // ホゲフガ </code> メソッド内で他のメソッドやプロパティにアクセスするにはthisキーワードを使う。 プロパティにアクセスするのは、. 演算子で直接名前を指定するか、[] 表記を使う。(ECMA-262 5th 11.2.1) <code> console.log( obj.hoge ) console.log( obj["hoge"] ) console.log( obj.getHogeFuga() ); console.log( obj["getHogeFuga"]() ); </code> []表記では文字列でプロパティを指定できるので、動的なメソッドディスパッチ・プロパティアクセスが容易である。 ===== オブジェクトリテラル ===== new演算子を使わず、オブジェクトリテラルを用いてインスタンスを生成できる(ECMA-262 5th 11.1.5)。 <code javascript> var obj = { hoge: "ほげ", fuga: "ふが", getHogeFuga: function() { return this.hoge + this.fuga } }; </code> これは以下の処理と同一の結果となる。 <code javascript> var obj = new Object(); obj.hoge = "ほげ"; obj.fuga = "ふが"; obj.getHogeFuga = function() { return this.hoge + this.fuga }; </code>
javascript/object.txt
· 最終更新:
2011/07/06 02:49
by
nullpon
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ