ユーザ用ツール

サイト用ツール


javascript:object

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
javascript:object [2011/07/06 02:49] nullponjavascript:object [2025/09/10 06:41] (現在) – 削除 nullpon
行 1: 行 1:
-====== 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.1309920583.txt.gz · 最終更新: by nullpon