目的:データのパッケージ、データ・ストレージ・コンテナの複数(複数データの一元管理)
1つの分類
1)組み込みオブジェクト:標準ESによって定義されたオブジェクトは、任意のESの実装に使用することができます
例如:数学文字列番号機能オブジェクト
2)ホスト:動作環境JSが提供するオブジェクト
たとえば、次のようにDOM BOM
3)カスタムオブジェクト:ユーザ定義
2、から構成されています。
- プロパティ:属性名(文字列)と(任意の型の)属性値で構成される
- 方法:特殊な属性(関数値)
図3に示すように、内部データアクセスオブジェクト
特殊文字を含むとき、属性名を使用することはできません。属性名不確かな(変数): - オブジェクト属性名
- オブジェクト[プロパティ名]:どのような状況下で使用することができます
第二に、方法は、オブジェクトを作成するには
1、new演算子:空のオブジェクトを作成し、動的に属性を追加します。ときに、オブジェクトの内部プロパティは、最初は不確実
短所:あまりにも多くの文
2、オブジェクトリテラル:あなたは内部プロパティに適しが決定されたオブジェクトを作成するとき。
短所:あなたは複数のオブジェクトを作成し、コードの重複がたくさん
図3は、ファクトリメソッドを使用して動的機能は、工場を通してオブジェクトを作成し、オブジェクトが返されます。複数のオブジェクトを作成するための
短所:オブジェクトの具体的な種類はありませんが、あなたは、オブジェクトのインスタンスが誰であるかを判断することはできません
4、構築機能
そして、道の違いファクトリ関数:オブジェクトを作成するためには表示されません。ノーリターン文はありません。コンストラクタは、資本、他の一般的な小文字の一般的なニーズに名前を付ける;例が誰であるか知っています
(両方で見ることができるの例としては、人のインスタンスである、instanceofの物体)
オブジェクトの作成:
1)すぐにオブジェクトを作成します。
2)コンストラクタの範囲は新しいオブジェクト(したがって、この点新しいオブジェクト)に割り当てられています
3)コードは、行コンストラクタによって行を行います
4)新しいオブジェクトが返されます
短所:あなたは、コンストラクタメソッドで関数を記述する場合、あなたは、オブジェクトを作成するたびにメソッドをインスタンス化します(メソッドは関数であり、関数はオブジェクトである)、各オブジェクトのメソッド
同じではありません。外側に書かれたメソッド関数はグローバル名前空間ではなく、十分なプライバシーを汚染します。これは、オブジェクトを作成するためのプロトタイプの方法を提示しました
5、コンストラクタのプロトタイプ+
向对象的原型中添加一些公有的属性,这样每次创建对象时就不会都重复创建。