Cara Operator baharu Mencipta dan Memulakan Objek dalam JavaScript
Pengendali baharu ialah kata kunci yang berkuasa dalam JavaScript yang digunakan untuk mencipta objek baharu. Ia memainkan peranan penting dalam pengaturcaraan berorientasikan objek tetapi boleh mencabar untuk difahami sepenuhnya, terutamanya berkaitan dengan rantaian prototaip.
Memahami Operator baharu
Apabila menggunakan pengendali baharu dengan fungsi, langkah berikut berlaku secara dalaman:
Satu Contoh Pelaksanaan
Untuk menunjukkan kefungsian operator baharu, berikut ialah pelaksanaan yang setara:
<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>
Contoh Penggunaan
Pertimbangkan contoh ini:
<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>
Ini menunjukkan cara pengendali baharu mencipta objek yang mewarisi daripada prototaip fungsi dan membenarkan akses kepada sifat dan kaedahnya.
Atas ialah kandungan terperinci Bagaimanakah pengendali `baru` berfungsi di belakang tabir untuk mencipta dan memulakan objek dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!