Геттеры аксессоров в ООП в 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.



Чат с GPT Компилятор