新しい演算子が JavaScript でオブジェクトを作成および初期化する方法
新しい演算子は、新しいオブジェクトを作成するために使用される JavaScript の強力なキーワードです。これはオブジェクト指向プログラミングで重要な役割を果たしますが、特にプロトタイプ チェーンに関連して完全に理解するのは困難な場合があります。
新しい Operator を理解する
使用する場合関数を使用した新しい演算子の場合、次の手順が内部で発生します。
実装例
新しい演算子の機能を示すには、次のようにします。同等の実装を次に示します。
<code class="javascript">function NEW(f) { let obj, ret, proto; // Check if `f.prototype` is an object proto = f.prototype ? f.prototype : Object.prototype; // Create an object inheriting from `proto` obj = Object.create(proto); // Call the function with `obj` as `this` ret = f.apply(obj, Array.prototype.slice.call(arguments, 1)); // Return the object from the function or the newly created `obj` return Object(ret) === ret ? ret : obj; }</code>
使用例
次の例を考えてみましょう。
<code class="javascript">function Foo(arg) { this.prop = arg; } Foo.prototype.inherited = 'baz'; let obj = NEW(Foo, 'bar'); console.log(obj.prop); // Output: "bar" console.log(obj.inherited); // Output: "baz" console.log(obj instanceof Foo); // Output: true</code>
これは、new 演算子がオブジェクトを作成する方法を示しています。これは関数のプロトタイプを継承し、そのプロパティとメソッドへのアクセスを許可します。
以上が「new」演算子はバックグラウンドでどのように動作して、JavaScript でオブジェクトを作成および初期化するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。