Приватни методе у ООП-у у JavaScript-у
Приватни могу бити не само својства, већ и методе. Обично се приватним чине помоћне методе, како се не би случајно могле позвати изван класе.
Хајде да погледамо на примеру. Нека имамо следећу класу:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Направимо у овој класи приватни метод, који ће параметром примати стринг и правити прво слово великим:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Искористићемо наш помоћни метод унутар другог метода:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#cape(this.#name);
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Хајде да проверимо. Направимо објекат наше класе:
let user = new User('john');
Позваћемо јавни метод, који користи помоћни:
console.log(user.show());
У следећем коду направите помоћни метод приватним:
class Employee {
constructor(name, salary) {
this.name = name;
this.salary = salary;
}
getSalary() {
return this.addSign(this.salary);
}
addSign(num) {
return num + '€';
}
}