私もこれらのことは知っていましたが、説明できず、深く掘り下げることもありませんでした。今日、「JavaScriptを理解する」を読んでいて、著者の説明を見て、突然目を開けました。
抜粋は次のとおりです。著者は非常に明確に述べています:
var anObject = new aFunction() の形式でオブジェクトを作成するプロセスは、実際には次のように分割できます。 3 つのステップ:
最初のステップは、新しいオブジェクトを作成することです。
2 番目のステップは、オブジェクトの組み込みプロトタイプ オブジェクトをコンストラクター プロトタイプによって参照されるプロトタイプ オブジェクトに設定することです。ステップは、このパラメータとしてオブジェクトを Constructor として呼び出し、メンバーの設定などの初期化作業を完了します。