გეტერები აქსესორების OOP-ში JavaScript-ში
მოდით უფრო დეტალურად განვიხილოთ აქსესორების თვისებების გეტერების გამოყენება. დავუშვათ, გვაქვს შემდეგი კლასი პრივატული თვისებით:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
მოდით ამ კლასში შევქმნათ
პუბლიკური თვისება name,
რომლის წაკითხვაც შესაძლებელი იქნება,
მაგრამ ჩაწერა არა:
class User {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
}
შევამოწმოთ მუშაობა. შევქმნათ ობიექტი ჩვენი კლასის, მივაწოდოთ მას პარამეტრად სახელის მნიშვნელობა:
let user = new User('john');
ახლა კი წავიკითხოთ სახელი პუბლიკური თვისების მეშვეობით:
let name = user.name;
console.log(name);
სახელის ჩაწერის მცდელობა კი გამოიწვევს შეცდომას, როგორც ეს ჩვენ გვსურდა:
user.name = 'eric';
განახორციელეთ აქსესორების გეტერები
კლასის Employee თვისებებისთვის.