Частни методи в ООП в 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 + '
;
}
}