DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

OBJECT PROTOTYPE

Pelajari tentang Prototype Objek dalam JavaScript, cara kerja, bagaimana membuat dan menggunakan prototype dalam kode JavaScript kamu.

JavaScript Object Prototype menjelaskan bagaimana objek berbagi metode dan properti. Dalam tutorial ini, kita akan belajar lebih lanjut tentang konsep penting ini dalam JavaScript.

Prototype Objek dalam JavaScript

Setiap objek JavaScript memiliki sifat prototype. Prototype adalah objek lain yang digunakan sebagai fallback atau cadangan. Ketika kamu mencoba mengakses properti atau metode yang tidak ada dalam objek, JavaScript mencoba mencarinya di prototype.

Mari kita lihat sebuah contoh:

function Student(firstName, lastName) {
  this.firstName = firstName;
  this.lastName = lastName;
}

let user = new Student("John", "Doe");

console.log(user.firstName); // Outputs: John

Jika kita mencoba mengakses metode yang tidak ada dalam objek user, JavaScript akan mencarinya di prototype. Misalnya, metode toString()

console.log(user.toString()); // Outputs: [object Object]

Membuat dan Menggunakan Prototype

Untuk menambahkan metode atau properti ke objek, kamu bisa menambahkannya ke prototipenya. Metode dan sifat yang didefinisikan dalam prototype akan diturunkan ke semua instans objek.

Mari kita lihat sebuah contoh:

Student.prototype.sayName = function() {
  return this.firstName + " " + this.lastName;
}

console.log(user.sayName()); // Outputs: John Doe

Dalam contoh ini, kita menambahkan metode sayName ke prototype Student. Kemudian, kita bisa menggunakannya seperti metode lainnya di objek user.

Mengubah Prototype Objek

JavaScript juga memungkinkan kamu untuk mengubah prototype objek. Kamu bisa melakukannya dengan menggunakan properti __proto__ atau metode Object.setPrototypeOf()

let animal = {
  makesNoise: function() {
    return "generic noise";
  }
}

let dog = {
  makesNoise: function() {
    return "woof!";
  }
}

dog.__proto__ = animal;

console.log(dog.makesNoise()); // Outputs: woof!

Dalam contoh ini, kita mengubah prototype dog ke animal. Meskipun dog sudah memiliki metode makesNoise, metode yang didefinisikan dalam objek dog akan menggantikan yang ada di prototype.

Penggunaan Object Prototype dalam JavaScript memungkinkan kamu untuk memanfaatkan inheritance, yang membuat struktur kode menjadi lebih efisien dan mudah dikelola. Dengan menggunakan prototype, kamu bisa mendefinisikan metode dan properti pada level yang lebih tinggi sehingga dapat digunakan oleh semua objek turunannya.

👈🏼 Object constructor
Object Set 👉🏼