Getters de propiedades virtuales en POO en JavaScript
Con los accesores podemos crear propiedades virtuales, que en realidad no existen en el objeto. Veamos un ejemplo. Supongamos que tenemos una clase con dos propiedades públicas:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
}
Creemos una tercera propiedad, que contendrá el nombre y apellido. Creemos para ello una propiedad-accesor:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
}
Comprobemos. Creemos un objeto de la clase, pasando como parámetros el nombre y apellido:
let user = new User('john', 'smit');
Mostremos los valores de las propiedades públicas:
console.log(user.name); // 'john'
console.log(user.surn); // 'smit'
Y ahora mostremos el valor de nuestra propiedad virtual:
console.log(user.full); // 'john smit'