JSオブジェクト指向行う方法

自身JSは、オブジェクト指向、それは授業を行う方法の一例であり、クラスのそれではないでしょうか?

1:プロトタイプ関数オブジェクト

   各オブジェクトは、テーブルを指し、プロトタイプのメンバー関数を有し、

表オブジェクトにa.prototype点;(){}関数

2:__proto__表

  各テーブルJS(オブジェクト)オブジェクトは、テーブル(オブジェクト)オブジェクトを指し、__proto__のメンバーが存在するであろう。私たちは、このキーのオブジェクトにアクセスすると見つからない場合、テーブルは__proto__し、__proto__前面と背面_されていない場合は、最初に自身のテーブル内で検索し、その後、その__proto__テーブルを見て_proto__テーブル、...すべての検索が完了しているだけにを見つけること;

3:新しい+の機能のメカニズム

  VAR aは=新しいA();これは、典型的な新しい+モード機能であり、

これでは、我々はその後、最終的には新しいAを()、コンストラクタ関数と呼ばれる関数をJSます何のことですか?

(1)新たな参照テーブルオブジェクト{}を持っていた以下のインスタンスをいいます。

(2)例えば、このような、関数Aに渡されます。

(3)表内部__proto__インスタンステーブルの下にファンクションキー、値をプロトタイプ種をコピーします。

(4)新しいインスタンスオブジェクトテーブルinstaceを返します。

4:JS オブジェクト指向の方法

(1)コンストラクタを定義します。

関数人(){...}

(2)メンバ関数を追加プロトタイプテーブルコンストラクタに

   Persion.prototype.set_age =関数(年齢){}

コンストラクタの後に得られた(3)新しい+新しいオブジェクト。

  VAR aは=新しい人();表である{...、__proto__:{set_age:(原型に由来する)関数オブジェクト}}、

 

(4)a.set_age(10);テーブルの例で内部を見、set_ageが見つかりません、

__proto__それが見つけるために内部に、これは暗黙のうちに渡され、set_ageを入力した後、この例であるによると、探し、そうa.set_ageは()上記set_age機能するために呼び出されます。

 

だから、aは、一例として、メソッドがクラスに呼び出すことができ、人のインスタンスである、これはJSオブジェクト指向の性質である、あなたはそれを知ってもらいますか?またはめまい、

めまい場合は、数回を見てください。

おすすめ

転載: www.cnblogs.com/blakehuangdong/p/11329690.html