Pengambil dan Penyetel JavaScript (dengan Contoh)

Dalam tutorial ini, Anda akan belajar tentang metode pengambil dan penyetel JavaScript dengan bantuan contoh.

Di JavaScript, ada dua jenis properti objek:

  • Properti data
  • Properti pengakses

Properti Data

Berikut adalah contoh properti data yang telah kami gunakan di tutorial sebelumnya.

 const student = ( // data property firstName: 'Monica'; );

Properti Pengakses

Dalam JavaScript, properti pengakses adalah metode yang mendapatkan atau menyetel nilai suatu objek. Untuk itu, kami menggunakan dua kata kunci berikut:

  • get - untuk mendefinisikan metode pengambil untuk mendapatkan nilai properti
  • set - untuk mendefinisikan metode penyetel untuk menyetel nilai properti

Pengambil JavaScript

Dalam JavaScript, metode pengambil digunakan untuk mengakses properti suatu objek. Sebagai contoh,

 const student = ( // data property firstName: 'Monica', // accessor property(getter) get getName() ( return this.firstName; ) ); // accessing data property console.log(student.firstName); // Monica // accessing getter methods console.log(student.getName); // Monica // trying to access as a method console.log(student.getName()); // error

Dalam program di atas, metode pengambil getName()dibuat untuk mengakses properti objek.

 get getName() ( return this.firstName; )

Catatan: Untuk membuat metode pengambil, getkata kunci digunakan.

Dan juga saat mengakses nilai, kami mengakses nilai sebagai properti.

 student.getName;

Saat Anda mencoba mengakses nilai sebagai metode, terjadi kesalahan.

 console.log(student.getName()); // error

Penyetel JavaScript

Dalam JavaScript, metode penyetel digunakan untuk mengubah nilai suatu objek. Sebagai contoh,

 const student = ( firstName: 'Monica', //accessor property(setter) set changeName(newName) ( this.firstName = newName; ) ); console.log(student.firstName); // Monica // change(set) object property using a setter student.changeName = 'Sarah'; console.log(student.firstName); // Sarah

Dalam contoh di atas, metode penyetel digunakan untuk mengubah nilai suatu objek.

 set changeName(newName) ( this.firstName = newName; )

Catatan: Untuk membuat metode penyetel, setkata kunci digunakan.

Seperti yang ditunjukkan pada program di atas, nilai dari firstNameadalah Monica.

Kemudian nilainya diubah menjadi Sarah.

 student.chageName = 'Sarah';

Catatan : Setter harus memiliki tepat satu parameter formal.

JavaScript Object.defineProperty ()

Dalam JavaScript, Anda juga dapat menggunakan Object.defineProperty()metode untuk menambahkan getter dan setter. Sebagai contoh,

 const student = ( firstName: 'Monica' ) // getting property Object.defineProperty(student, "getName", ( get : function () ( return this.firstName; ) )); // setting property Object.defineProperty(student, "changeName", ( set : function (value) ( this.firstName = value; ) )); console.log(student.firstName); // Monica // changing the property value student.changeName = 'Sarah'; console.log(student.firstName); // Sarah

Dalam contoh di atas, Object.defineProperty()digunakan untuk mengakses dan mengubah properti suatu objek.

Sintaks untuk digunakan Object.defineProperty()adalah:

 Object.defineProperty(obj, prop, descriptor)

The Object.defineProperty()Metode mengambil tiga argumen.

  • Argumen pertama adalah objectName.
  • Argumen kedua adalah nama properti.
  • Argumen ketiga adalah objek yang mendeskripsikan properti.

Artikel yang menarik...