Sering wawancara di ujung depan atau berkomunikasi dengan rekan -rekan lain adalah bahwa ketika datang untuk membangun konstruktor di JS, yang terbaik adalah menggunakan prototipe: tentukan metode pada prototipe konstruktor. Keuntungannya adalah metode yang dihasilkan oleh konstruktor semua menunjuk ke indeks fungsi, yang dapat menghemat memori.
Tentu saja, tidak ada masalah dengan pernyataan ini. Hanya saja dalam hal implementasi, tidak hanya mungkin untuk mencapai efek seperti itu dengan menggunakan prototipe. Kita dapat mendefinisikan metode di luar konstruktor dalam bentuk fungsi, dan kemudian menggunakan ini.method = metode dalam konstruktor. Dengan cara ini, metode instance yang dihasilkan juga menunjuk ke fungsi melalui indeks, sebagai berikut:
// Tidak ada metode definisi prototipe yang digunakan: (function () {function constractor () {this.method1 = method1; this.method2 = method2;} function method1 () {} function method2 () {}}) ();Secara umum, saat menggunakan definisi prototipe, kode adalah sebagai berikut:
(function () {function constractor () {} constactor.prototype = {method1: function () {}, method2: function () {}}; // atau constactor.prototype.method1 = function () {}; constactor.prototype.method2 = () {) {); {{{}; {);Tidak ada yang mendalam tentang teori dan implementasi. Hanya saja untuk mencapai tujuan yang sama, berbagai cara dapat digunakan. Namun, metode ini tidak berfungsi saat menggunakan instance dari operator untuk menilai hubungan warisan.
Penjelasan terperinci tentang manfaat menggunakan prototipe di JS adalah konten lengkap yang dibagikan oleh editor. Saya harap ini dapat memberi Anda referensi dan saya harap Anda dapat mendukung wulin.com lebih lanjut.