Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Anda Mencipta Tingkah Laku Seperti Pembina dalam JavaScript Tanpa Kelas Asli?

Bagaimanakah Anda Mencipta Tingkah Laku Seperti Pembina dalam JavaScript Tanpa Kelas Asli?

Linda Hamilton
Linda Hamiltonasal
2024-11-04 18:42:02563semak imbas

How Do You Create Constructor-like Behavior in JavaScript Without Native Classes?

Pembina Objek JavaScript

Dalam JavaScript, tidak seperti bahasa pengaturcaraan lain, kelas dan objek tidak mempunyai pembina asli. Sebaliknya, mereka menggunakan kaedah alternatif untuk mencapai kefungsian yang serupa.

Menggunakan Prototaip

Salah satu cara untuk mencipta gelagat seperti pembina ialah melalui prototaip. Fungsi pembina boleh ditakrifkan, seperti Kotak(warna), di mana ini merujuk kepada objek yang dicipta. Pembina memulakan sifat objek, seperti warna.

Selain itu, prototaip membenarkan penciptaan kaedah dikongsi. Fungsi Box boleh mentakrifkan kaedah getColor dalam prototaipnya, yang boleh diakses oleh semua objek yang dibuat menggunakan Box.

Menyembunyikan Sifat

Sebagai alternatif, ia boleh disembunyikan sifat dalam objek untuk mensimulasikan pembolehubah ahli persendirian. Fungsi boleh ditakrifkan dengan warna pembolehubah peribadi dan dedahkan kaedah getColor untuk mendapatkan semula nilainya.

Penggunaan

Kedua-dua pendekatan membolehkan penciptaan kejadian menggunakan yang baharu kata kunci. Contohnya, Kotak baharu("biru") dan Kotak baharu("hijau") mencipta dua kejadian berasingan dengan nilai berbeza untuk warna. Memanggil getColor pada kejadian ini akan mengembalikan warna masing-masing.

Atas ialah kandungan terperinci Bagaimanakah Anda Mencipta Tingkah Laku Seperti Pembina dalam JavaScript Tanpa Kelas Asli?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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