Геттерҳои аксессорҳо дар ООП дар JavaScript
Биёед татбиқи геттерҳои хусусияти аксессорҳоро муфассалтар таҳлил кунем. Фарз мекунем, ки мо синфи зеринро бо хусусияти хусусӣ дорем:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
Биёед дар ин синф хусусияти умумии name созем, ки онро метавон хонд, вале наметавон навишт:
class User {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
}
Кори онро санҷем. Объекти синфи худро созем, ба он дар параметр арзиши номро гузаронем:
let user = new User('john');
Ва акнун номро тавассути хусусияти умумӣ бихонем:
let name = user.name;
console.log(name);
Аммо кӯшиши навиштани ном ба хатогӣ меорад, чун мо мехостем:
user.name = 'eric';
Барои хусусиятҳои синфи Employee геттерҳои аксессорҳоро амалӣ намоед.