U ovom ćete uputstvu uz primjere naučiti o metodama dobivanja i postavljanja JavaScript-a.
U JavaScript-u postoje dvije vrste svojstava objekta:
- Svojstva podataka
- Svojstva pristupnika
Svojstvo podataka
Evo primjera svojstva podataka koje smo koristili u prethodnim vodičima.
const student = ( // data property firstName: 'Monica'; );
Svojstvo pristupnika
U JavaScript-u svojstva pristupnika su metode koje dobivaju ili postavljaju vrijednost objekta. Za to koristimo ove dvije ključne riječi:
get
- definirati getter metodu za dobivanje vrijednosti svojstvaset
- za definiranje metode postavljača za postavljanje vrijednosti svojstva
JavaScript Getter
U JavaScriptu se za dobivanje svojstava objekta koriste getter metode. Na primjer,
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
U gore navedenom programu getName()
stvorena je metoda getera za pristup svojstvu objekta.
get getName() ( return this.firstName; )
Napomena: Za stvaranje metode dobivanja koristi se get
ključna riječ.
A također kad pristupamo vrijednosti, pristupamo vrijednosti kao svojstvo.
student.getName;
Kada pokušate pristupiti vrijednosti kao metodi, pojavljuje se pogreška.
console.log(student.getName()); // error
JavaScript postavljač
U JavaScriptu se metode postavljanja koriste za promjenu vrijednosti objekta. Na primjer,
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
U gornjem primjeru, metoda postavljanja koristi se za promjenu vrijednosti objekta.
set changeName(newName) ( this.firstName = newName; )
Napomena: Za stvaranje metode postavljanja koristi se set
ključna riječ.
Kao što je prikazano u gornjem programu, vrijednost firstName
je Monica
.
Tada se vrijednost mijenja u Sarah
.
student.chageName = 'Sarah';
Napomena : Setter mora imati točno jedan formalni parametar.
JavaScript Object.defineProperty ()
U JavaScriptu također možete koristiti Object.defineProperty()
metodu za dodavanje getera i postavljača. Na primjer,
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
U gornjem primjeru Object.defineProperty()
koristi se za pristup i promjenu svojstva objekta.
Sintaksa za korištenje Object.defineProperty()
je:
Object.defineProperty(obj, prop, descriptor)
Object.defineProperty()
Metoda uzima tri argumente.
- Prvi argument je objectName.
- Drugi argument je naziv nekretnine.
- Treći argument je objekt koji opisuje svojstvo.