Getter di proprietà virtuali in OOP in JavaScript
Gli accessor permettono di creare proprietà virtuali, che in realtà non esistono nell'oggetto. Vediamo un esempio. Supponiamo di avere una classe con due proprietà pubbliche:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
}
Creiamo una terza proprietà, che conterrà nome e cognome. Creiamo a questo scopo una proprietà accessor:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
}
Verifichiamo. Creiamo un oggetto della classe, passando come parametri nome e cognome:
let user = new User('john', 'smit');
Visualizziamo i valori delle proprietà pubbliche:
console.log(user.name); // 'john'
console.log(user.surn); // 'smit'
E ora visualizziamo il valore della nostra proprietà virtuale:
console.log(user.full); // 'john smit'