Apsaugotos savybės OOP JavaScripte
Įveskime ir apsaugotas savybes. Jų pavadinimus taip pat pradėsime pabraukimu. Pažiūrėkime pavyzdį. Sukurkime tėvinę klasę su apsaugota savybe, kurioje yra amžius:
class User {
setAge(age) {
this._age = age;
}
getAge() {
return this._age;
}
}
Išvestinėje klasėje sukurkime metodą, padidinantį amžių vienetu:
class Student extends User {
incAge() {
this._age++;
}
}
Perrašykite šį kodą naudodami apsaugotą savybę:
class User {
#name;
setName(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
class Employee extends User {
setName(name) {
if (name.length > 0) {
this.#name = name;
}
}
}