Mendedahkan perkara yang sebenarnya dilakukan oleh prototaip JavaScript dan rantaian prototaip

WBOY
Lepaskan: 2024-01-11 10:31:59
asal
1302 orang telah melayarinya

Mendedahkan perkara yang sebenarnya dilakukan oleh prototaip JavaScript dan rantaian prototaip

Mendedahkan peranan sebenar prototaip JavaScript dan rantaian prototaip

Dalam proses pembelajaran JavaScript, kita sering menghadapi dua konsep rantaian prototaip dan prototaip. Ia adalah ciri yang sangat penting dalam JavaScript dan boleh membantu kami memahami pengaturcaraan berorientasikan objek JavaScript dengan lebih baik. Artikel ini akan menyelidiki peranan sebenar prototaip JavaScript dan rantaian prototaip, serta memberikan contoh kod khusus.

Pertama, kita perlu faham apa itu prototaip. Prototaip ialah sifat objek JavaScript yang menunjuk ke objek lain Ia adalah objek yang diwarisi oleh semua objek contoh. Setiap objek JavaScript (kecuali null) mempunyai prototaip, dan ia boleh menjadi objek lain atau null. Kita boleh mencipta objek prototaip dengan menggunakan kaedah Object.create().

Peranan prototaip adalah untuk melaksanakan pewarisan. Apabila objek menunjuk ke objek lain melalui prototaip, ia boleh mewarisi sifat dan kaedah daripada objek prototaip. Dengan cara ini, kita boleh berkongsi atribut dan kaedah antara objek dengan mentakrifkan prototaip objek. Ini ialah cara biasa untuk melaksanakan warisan dalam JavaScript.

Seterusnya, mari kita lihat rangkaian prototaip yang sedang beraksi. Rantaian prototaip ialah struktur senarai terpaut yang terdiri daripada objek prototaip Ia adalah mekanisme untuk mencari sifat dan kaedah objek. Apabila kita mengakses harta atau kaedah daripada objek, jika objek itu sendiri tidak mempunyai sifat atau kaedah, JavaScript akan mencarinya secara automatik dalam objek prototaipnya Jika ia belum menemuinya lagi, ia akan terus mencari prototaip objek objek prototaip Sehingga sifat atau kaedah ditemui atau penghujung rantai prototaip ditemui.

Peranan rantaian prototaip adalah untuk melaksanakan pewarisan sifat dan kaedah. Apabila objek tidak mempunyai sifat atau kaedah tertentu, ia boleh mencari objek prototaipnya melalui rantai prototaip untuk mendapatkan sifat atau kaedah. Dengan cara ini, kita boleh berkongsi sifat dan kaedah antara objek pada tahap yang berbeza.

Seterusnya, kami akan lebih memahami peranan sebenar prototaip dan rantai prototaip melalui contoh kod tertentu.

Pertama, kami mentakrifkan Orang pembina, yang mempunyai dua atribut nama dan umur.

function Person(name, age) {
    this.name = name;
    this.age = age;
}

Person.prototype.sayHello = function() {
    console.log("Hello, my name is " + this.name);
}
Salin selepas log masuk

Kemudian, kami menggunakan Orang pembina untuk mencipta orang objek contoh.

var person = new Person("John", 25);
Salin selepas log masuk

Kini, kita dapat melihat bahawa objek orang itu mewarisi sifat dan kaedah Orang pembina. Kita boleh mengakses sifat dan kaedah ini dengan menggunakan pengendali titik.

console.log(person.name); // 输出:John
console.log(person.age); // 输出:25
person.sayHello(); // 输出:Hello, my name is John
Salin selepas log masuk

Seterusnya, mari kita cipta pekerja objek prototaip, yang mempunyai kerja kaedah.

var employee = {
    work: function() {
        console.log("I'm working.");
    }
}
Salin selepas log masuk

Kemudian, kami menetapkan objek pekerja sebagai prototaip objek orang untuk melaksanakan pewarisan.

person.__proto__ = employee;
Salin selepas log masuk

Kini, kita boleh mengakses kaedah kerja objek pekerja melalui objek orang.

person.work(); // 输出:I'm working.
Salin selepas log masuk

Ini kerana apabila objek orang itu tidak mempunyai kaedah kerja, JavaScript akan mencari kaedah pada rantai prototaipnya dan melaksanakannya.

Dengan contoh kod di atas, kita boleh melihat prototaip dan rantai prototaip sedang beraksi. Mereka boleh membantu kami merealisasikan pewarisan sifat dan kaedah antara objek dan meningkatkan kebolehgunaan semula dan kebolehselenggaraan kod.

Ringkasnya, prototaip JavaScript dan rantaian prototaip ialah mekanisme penting untuk melaksanakan pewarisan. Prototaip merealisasikan pewarisan atribut dan kaedah dengan menunjuk ke objek lain, manakala rantai prototaip mencari atribut dan kaedah objek melalui struktur senarai terpaut, merealisasikan perkongsian atribut dan kaedah antara objek berbilang peringkat. Pemahaman mendalam tentang peranan sebenar prototaip dan rantaian prototaip boleh membantu kami lebih memahami pengaturcaraan berorientasikan objek JavaScript dan menulis kod yang lebih elegan dan cekap.

Atas ialah kandungan terperinci Mendedahkan perkara yang sebenarnya dilakukan oleh prototaip JavaScript dan rantaian prototaip. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan