Приватни својства во ООП во JavaScript
Својствата на објектот кои може да се читаат и запишуваат однадвор, се нарекуваат јавни. Постојат и приватни својства, кои ќе бидат достапни само внатре во класата.
Имињата на приватните својства треба
да започнуваат со симболот #.
Освен тоа, ваквите својства мора
да се декларираат на почетокот на кодот на класата.
Ајде да го направиме ова:
class User {
#name;
}
Сега ќе запишеме податоци во нашето својство. Ова може да се направи, на пример, во конструкторот на класата:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
Сега да направиме метод, кој ќе ја враќа вредноста на нашето својство:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Да создадеме објект од класата, пренесувајќи го името на корисникот како параметар:
let user = new User('john');
Обидот за директно пристапување кон нашето својство надвор од класата ќе резултира со грешка:
console.log(user.#name); // грешка
А повикувањето на нашиот метод ќе овозможи читање на ова својство:
console.log(user.show()); // ќе испише 'john'
Во класата Employee направете
три приватни својства: име, плата
и возраст.
Пренесете ги вредностите на овие својства како параметар на конструкторот.
Направете метод, кој ќе ги испечати податоците за работникот.