JavaScript OOP (Prototipe) #2
Nov 27 2022
Hai teman-teman, saya Bennison, Di blog ini, saya akan menjelaskan cara kerja OOP di Javascript, dan menjelaskan perbedaannya dengan OOP klasik. Sebelum membaca artikel ini, silahkan baca blog saya sebelumnya yang membahas tentang dasar-dasar OOP.

Hai teman-teman, saya Bennison, Di blog ini, saya akan menjelaskan cara kerja OOP di Javascript, dan menjelaskan perbedaannya dengan OOP klasik. Sebelum membaca artikel ini, silahkan baca blog saya sebelumnya yang membahas tentang dasar-dasar OOP .
Apa itu Prototipe?
- Dalam Javascript kami memiliki sesuatu yang disebut prototipe, Dalam JavaScript, setiap objek akan ditautkan ke prototipe tertentu. Jadi setiap objek memiliki prototipe. prototipe juga berisi properti dan metode.
- Di sini yang penting adalah metode dan properti prototipe dapat diakses oleh objek.
- Dalam OOP Klasik sebuah objek dibuat dari kelas, yang disebut instantiasi. Di sini kelas hanyalah cetak biru untuk membuat Objek.
- Tapi Dalam Javascript, terminologi ini hanya berbeda. Di sini setiap objek dihubungkan dengan objek lain , dan objek tersebut disebut prototipe .

- Pewarisan prototipe berarti prototipe yang berisi metode, dan prototipe yang dapat diakses oleh semua objek yang terkait dengan prototipe tersebut.
- Jadi objek mewarisi metode dan properti dari prototipe, inilah yang disebut pewarisan prototipe. pewarisan ini berbeda dengan pewarisan kelas yang merupakan pewarisan satu kelas dari kelas lainnya. Namun dalam kasus ini, instance mewarisi dari kelas dasar.
- Pada gambar di atas, pada panah OOP javascript mengarah ke atas, ini berarti objek mendelegasikan perilakunya ke prototipe.
- Dalam OOP klasik, metode disalin dari kelas ke instance (objek).
const numbers = [1, 2, 3, 4,5];
numbers.map((num) => num * 2)


- Fungsi konstruktor digunakan untuk membuat objek dari fungsi. ini adalah bagaimana objek bawaan seperti metode Array dan map diimplementasikan.
- Ini adalah alternatif modern untuk fungsi konstruktor. Kelas ES6 bekerja sama dengan fungsi konstruktor. Kelas ES6 tidak berperilaku seperti OOP Klasik. Di belakang layar, kelas ES6 diimplementasikan dengan fungsi Konstruktor.
class User {
constructor(firstName, lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
getFullName() {
console.log(this.firstName + ' ' + this.lastName);
}
}
const user = new User('Bennison', 'J');
console.log(user); // { firstName: 'Bennison', lastName: 'J' }
console.log(user.hasOwnProperty('firstName')); // true
console.log(user.hasOwnProperty('getFullName')); // false
- Metode "object.create()" adalah cara termudah untuk menautkan objek ke objek prototipe.
const objOne = {
firstName: 'Bennison',
lastName: 'J',
getFullName: function () {
console.log(this.firstName + ' ' + this.lastName);
}
};
const objTwo = Object.create(objOne);
console.log(objTwo); // {}
objTwo.getFullName(); // Bennison J
- Saya harap, Di Blog ini, kita telah mempelajari dasar-dasar pewarisan prototipe dalam Javascript, jika Anda tidak dapat memahami contoh di atas, jangan khawatir saya akan menjelaskan lebih lanjut tentang konsep ini di blog saya yang akan datang. Terima kasih telah membaca blog ini, Sampai jumpa lagi.
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'