𝗢𝗯𝗷𝗲𝗰𝘁 𝗖𝗼𝗻𝘀𝘁𝗿𝘂𝗰𝘁𝗼𝗿𝘀 𝗶𝗻 𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁
Anda sering perlu mencipta banyak objek daripada jenis yang sama. JavaScript memberikan anda beberapa cara untuk melakukannya.
Fungsi Konstruktor
Konstruktor ialah fungsi khas untuk membina dan menyediakan objek. Gunakan kata kunci new untuk memanggilnya. Sentiasa mulakan nama fungsi dengan huruf besar. Ini membantu anda membezakannya daripada fungsi biasa.
Jika anda terlupa menggunakan kata kunci new, fungsi tersebut akan berfungsi seperti fungsi standard dan gagal mencipta objek yang betul.
Nilai Lalai
Anda boleh menetapkan nilai lalai dalam konstruktor anda. Ini memastikan objek anda sentiasa mempunyai data yang sah walaupun anda tertinggal argumen.
Contoh: function Person(name = "Unknown", age = 0) { this.name = name; this.age = age; }
Prototaip dan Memori
Menambah kaedah (methods) kepada prototaip adalah lebih bijak daripada menambahnya terus ke dalam konstruktor. Apabila anda menggunakan prototaip, semua instans berkongsi satu kaedah yang sama. Ini menjimatkan memori kerana komputer tidak perlu mencipta semula kaedah tersebut bagi setiap objek baharu.
Object.create()
Kaedah ini mencipta objek baharu menggunakan objek sedia ada sebagai prototaipnya. Ia mewujudkan pewarisan tanpa memerlukan konstruktor. Objek baharu tersebut boleh mengakses sifat (properties) daripada objek asal.
Pewarisan Kelas
JavaScript moden menggunakan kelas untuk mengendalikan pewarisan. Anda boleh mencipta kelas anak yang meluaskan (extends) kelas induk. Gunakan kata kunci super() untuk menghantar data daripada anak kepada induk. Ini membolehkan kelas anak menggunakan sifat daripada kelas induk sambil menambah ciri uniknya sendiri.
Mengapa menggunakan konstruktor?
- Kod boleh guna semula: Cipta banyak objek yang serupa dengan cepat.
- Pengkapsulan (Encapsulation): Simpan logik penyediaan objek di satu tempat.
- Inisialisasi mudah: Tetapkan nilai khusus semasa penciptaan.
- Pewarisan: Bina objek yang kompleks daripada objek yang lebih ringkas.
- Kod yang bersih: Pastikan logik anda tersusun dan mudah dibaca.
Sumber: https://www.geeksforgeeks.org/javascript/js-constructor-method/ Sumber: https://www.w3schools.com/js/js_object_constructors.asp Post penuh: https://dev.to/kamalesh_ar_6252544786997/object-constructors-in-javascript-2e96
Komuniti pembelajaran pilihan: https://t.me/GyaanSetuAi