JavaScript Getter and Setter (ar piemēriem)

Šajā apmācībā jūs uzzināsit par JavaScript getter un seter metodēm ar piemēru palīdzību.

JavaScript ir divu veidu objektu rekvizīti:

  • Datu īpašības
  • Piederumu īpašības

Datu īpašums

Šeit ir datu rekvizītu piemērs, ko mēs izmantojām iepriekšējās apmācībās.

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

Piederuma īpašums

JavaScript piekļuves rekvizīti ir metodes, kas iegūst vai iestata objekta vērtību. Tam mēs izmantojam šos divus atslēgvārdus:

  • get - definēt labāku metodi, lai iegūtu rekvizīta vērtību
  • set - noteikt setera metodi rekvizīta vērtības iestatīšanai

JavaScript Getter

JavaScript piekļuvei objekta īpašībām tiek izmantotas getter metodes. Piemēram,

 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

Iepriekš minētajā programmā getName()tiek izveidota metode getter, lai piekļūtu objekta īpašumam.

 get getName() ( return this.firstName; )

Piezīme. Lai izveidotu getter metodi, gettiek izmantots atslēgvārds.

Un arī, piekļūstot vērtībai, mēs piekļūstam vērtībai kā īpašumam.

 student.getName;

Mēģinot piekļūt vērtībai kā metodei, rodas kļūda.

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

JavaScript iestatītājs

JavaScript, lai mainītu objekta vērtības, tiek izmantotas setera metodes. Piemēram,

 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

Iepriekš minētajā piemērā, lai mainītu objekta vērtību, tiek izmantota setera metode.

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

Piezīme. Lai izveidotu setera metodi, settiek izmantots atslēgvārds.

Kā parādīts iepriekš minētajā programmā, vērtība firstNameir Monica.

Tad vērtība tiek mainīta uz Sarah.

 student.chageName = 'Sarah';

Piezīme : Setteram jābūt tieši vienam formālam parametram.

JavaScript Object.defineProperty ()

JavaScript, jūs varat arī izmantot Object.defineProperty()metodi, lai pievienotu getters un seters. Piemēram,

 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

Iepriekš minētajā piemērā Object.defineProperty()tiek izmantots, lai piekļūtu un mainītu objekta rekvizītu.

Lietošanas sintakse Object.defineProperty()ir šāda:

 Object.defineProperty(obj, prop, descriptor)

Object.defineProperty()Metode aizņem trīs argumentus.

  • Pirmais arguments ir objectName.
  • Otrais arguments ir īpašuma nosaukums.
  • Trešais arguments ir objekts, kas apraksta īpašumu.

Interesanti raksti...