Metodat Private në OOP në JavaScript
Jo vetëm vetitë, por edhe metodat mund të jenë private. Zakonisht metodat ndihmëse bëhen private, në mënyrë që aksidentalisht të mos mund të thirren nga jashtë klasës.
Le të shohim një shembull. Le të themi se kemi klasën e mëposhtme:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Le të krijojmë një metodë private në këtë klasë, e cila do të marrë një varg si parametër dhe do ta bëjë shkronjën e parë të madhe:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Le të përdorim metodën tonë ndihmëse brenda një metode tjetër:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#cape(this.#name);
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Le të testojmë. Le të krijojmë një objekt të klasës sonë:
let user = new User('john');
Le të thërrasim metodën publike që përdor metodën ndihmëse:
console.log(user.show());
Në kodin e mëposhtëm, bëni metodën ndihmëse private:
class Employee {
constructor(name, salary) {
this.name = name;
this.salary = salary;
}
getSalary() {
return this.addSign(this.salary);
}
addSign(num) {
return num + '
;
}
}