Gettere for imaginære egenskaper i OOP i JavaScript
Med aksessorer kan du lage imaginære egenskaper som faktisk ikke finnes i objektet. La oss se på et eksempel. La oss si at vi har en klasse med to offentlige egenskaper:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
}
La oss lage en tredje egenskap, som skal inneholde fornavn og etternavn. La oss lage en aksessor-egenskap for dette:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
}
La oss teste. La oss opprette et objekt av klassen, som sender inn fornavn og etternavn som parametere:
let user = new User('john', 'smit');
La oss skrive ut verdiene til de offentlige egenskapene:
console.log(user.name); // 'john'
console.log(user.surn); // 'smit'
Og la oss nå skrive ut verdien av vår imaginære egenskap:
console.log(user.full); // 'john smit'