Skyddade egenskaper i OOP i JavaScript
Låt oss även introducera skyddade egenskaper. Vi kommer också att börja deras namn med understreck. Låt oss titta på ett exempel. Låt oss skapa en förälderklass med en skyddad egenskap som innehåller ålder:
class User {
setAge(age) {
this._age = age;
}
getAge() {
return this._age;
}
}
I barnklassen låt oss skapa en metod som ökar åldern med ett:
class Student extends User {
incAge() {
this._age++;
}
}
Skriv om följande kod med en skyddad egenskap:
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;
}
}
}