Rumah >hujung hadapan web >tutorial js >Pengenalan kepada prototaip rantaian prototaip dalam kemahiran JavaScript_javascript
Warisan dalam JavaScript dicapai melalui rantaian prototaip: setiap objek mempunyai objek lain di dalamnya sebagai prototaipnya dan objek itu mewarisi sifat daripada prototaip ini. Untuk setiap objek, anda boleh mengakses objek prototaipnya dalam tiga cara berikut:
1.__proto__. Objek prototaip objek boleh diakses melalui atribut __proto__nya. Sifat ini hanya disokong dalam Firefox, Safari dan Chrome, bukan IE dan Opera.
2.Object.getPrototypeOf(). Anda boleh menghantar objek sebagai parameter ke dalam kaedah Object.getPrototypeOf() dan objek prototaip objek akan dikembalikan selepas pelaksanaan. Kaedah ini hanya disokong dalam standard ECMAScript 5.
3.o.pembina.prototaip. Akses objek prototaip dengan mula-mula mendapatkan fungsi pembina objek, dan kemudian mengakses sifat prototaip fungsi pembina. Prasyarat untuk menggunakan kaedah ini ialah terdapat atribut pembina yang menunjuk kepada pembina dalam objek.
Untuk menentukan sama ada terdapat hubungan rantai prototaip antara dua objek, anda boleh menggunakan kaedah isPrototype():
Untuk semua objek yang dibuat dengan literal, objek prototaipnya ialah Object.prototype (sebagai objek khas, Object.prototype tidak mempunyai objek prototaip):
Untuk semua objek yang dibuat dengan operator baharu, objek prototaip mereka ialah atribut prototaip bagi fungsi pembina:
Proses menggunakan operator baharu untuk mencipta objek dalam JavaScript adalah seperti berikut:
1. Cipta objek kosong baharu.
2. Halakan atribut __proto__ objek ini kepada atribut prototaip fungsi pembina.
3. Gunakan objek ini sebagai parameter ini untuk melaksanakan fungsi pembina.
Daripada proses penciptaan di atas, dapat disimpulkan bahawa semua objek yang dibina daripada fungsi pembina yang sama mempunyai atribut __proto__ mereka (iaitu, objek prototaip mereka) yang sama, iaitu, hanya terdapat satu objek prototaip: