JavaScripti parem ja setter (koos näidetega)

Selles õpetuses saate näidete abil teada JavaScripti getteri ja setteri meetoditest.

JavaScriptis on kahte tüüpi objekti omadusi:

  • Andmete atribuudid
  • Juurdepääsu omadused

Andmete atribuut

Siin on näide andmete atribuutidest, mida oleme eelmistes õpetustes kasutanud.

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

Juurdepääsuvara

JavaScripti puhul on ligipääsu atribuudid meetodid, mis saavad või määravad objekti väärtuse. Selleks kasutame neid kahte märksõna:

  • get - atribuudi väärtuse saamiseks getter-meetodi määratlemine
  • set - määrata setteri meetod atribuudi väärtuse määramiseks

JavaScripti parem

JavaScriptis kasutatakse objekti omadustele juurde pääsemiseks getter-meetodeid. Näiteks,

 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

Ülaltoodud programmis luuakse getter-meetod getName()objekti omadusele juurdepääsemiseks.

 get getName() ( return this.firstName; )

Märkus. Getter-meetodi loomiseks getkasutatakse märksõna.

Ja ka väärtusele juurde pääsemisel pääseme väärtusele juurde kui omadusele.

 student.getName;

Kui proovite väärtusele juurde pääseda meetodina, ilmneb tõrge.

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

JavaScripti setter

JavaScriptis kasutatakse objekti väärtuste muutmiseks setter-meetodeid. Näiteks,

 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

Ülaltoodud näites kasutatakse setter-meetodit objekti väärtuse muutmiseks.

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

Märkus. Setteri meetodi loomiseks setkasutatakse märksõna.

Nagu on näidatud eespool nimetatud programmi väärtus firstNameon Monica.

Seejärel muudetakse väärtus väärtuseks Sarah.

 student.chageName = 'Sarah';

Märkus . Setteril peab olema täpselt üks ametlik parameeter.

JavaScripti Object.defineProperty ()

JavaScripti abil saate Object.defineProperty()meetodit kasutada ka gettersite ja setterite lisamiseks. Näiteks,

 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

Ülaltoodud näites Object.defineProperty()kasutatakse objekti ligipääsuks ja atribuudi muutmiseks.

Kasutamise süntaks Object.defineProperty()on:

 Object.defineProperty(obj, prop, descriptor)

Object.defineProperty()Meetod kolme argumenti.

  • Esimene argument on objectName.
  • Teine argument on vara nimi.
  • Kolmas argument on vara kirjeldav objekt.

Huvitavad Artiklid...