つの法則
js独自の公式
.__proto__ === コンストラクタ.prototype
根本公理 Object.prototypeはすべてのオブジェクトのプロトタイプ関数の公理
- すべての関数は関数から構成される
任意の関数.__proto__ === Function.prototype
- オブジェクト、配列、関数を含むすべての関数は
神話3
XXXオブジェクトのプロトタイプ__proto__ ? prototype
- Object オブジェクトのプロトタイプは Object です。.prototype エラー
- Object オブジェクトのプロトタイプは Object です。.__proto__ 正しい
分析
- つまり、xxxのプロトタイプはxxx.__proto__と等価です。
- つまり、xxxのプロトタイプはxxx.__proto__と等価です。
,2,3]のプロトタイプはArray.prototypeですが、Object.prototypeではありませんか?
分析
- オブジェクトには、通常のオブジェクトと特殊なオブジェクトの2種類があります。
- Object.prototypeは普通のオブジェクトのプロトタイプです。
- Object.prototypeは特殊オブジェクトのプロトタイプです。
Object.prototype ルート・オブジェクトではありませんか?
分析
- すべての関数のプロトタイプはFunctio.prototypeです。
js世界地図の構築
- jsはオブジェクトを作るときに名前をつけません。
- オブジェクトのプロトタイプである名前のないルートオブジェクトを作ることから始めます。
- そして
- これに従って
- Function.__proto__ === Function.prototype
- Function.__proto__ === Function.prototype
- 関数から無名オブジェクト、配列の作成
- Array.prototypeは配列のプロトタイプを格納します。
- ウィンドウが作成されると、関数はウィンドウオブジェクトのプロパティの名前から参照されます。
- プロトタイプのプロトタイプはルートオブジェクトです。
イラスト
- コンストラクタを使ってオブジェクトを作成
- コンストラクタはオブジェクトのプロトタイプをあらかじめ保存しておきます。