Прыватныя ўласцівасці ў ААП у JavaScript

Уласцівасці аб'екта, якія можна прачытваць і запісваць звонку, называюцца публічнымі. Існуюць таксама прыватныя ўласцівасці, якія будуць даступныя толькі ўнутры класа.

Імёны прыватных уласцівасцей трэба пачынаць з сімвала #. Акрамя таго, такія ўласцівасці абавязкова трэба аб'явіць у пачатку кода класа. Давайце зробім гэта:

javascriptclass User {
  #name;
}

Цяпер запішам дадзеныя ў нашу ўласцівасць. Гэта можна зрабіць, напрыклад, у канструктары класа:

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
}

Зробім цяпер метад, які будзе вяртаць значэнне нашай уласцівасці:

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
  
  show() {
    return this.#name;
  }
}

Стварым аб'ект класа, перадаўшы параметрам імя юзера:

javascriptlet user = new User('john');

Спроба звярнуцца напрамую да нашай уласцівасці па-за класам прывядзе да памылкі:

javascriptconsole.log(user.#name); // памылка

А выклік нашага метаду дазволіць прачытаць гэтую ўласцівасць:

javascriptconsole.log(user.show()); // вывядзе 'john'
Задание 1

У класе Employee зрабіце тры прыватныя ўласцівасці: імя, заробак і ўзрост.

Задание 2

Перадайце параметрам канструктара значэнні гэтых уласцівасцей.

Задание 3

Зрабіце метад, які вывядзе дадзеныя работніка.