JavaScript-daky OOP-de köne usulda hususylyk

Hususy häsiýetleri we usullary # nyşany arkaly kesgitlemek JavaScript-e ýakynda wagtda girdi. Ondan öň aýratyn çylşyrymly usul ulanmak zerurdy.

Bu usulyň esasy, hususy häsiýetleriň we usullaryň atlarynyň aşaky çyzyk bilen başlamaly diýen ylalaşykda. Aslynda şeýle atlar hususy bolmaz, ýöne klasyň daşyndan olary ulanmazlyk barada ylalaşýarys.

Gelin synap göreli. Şeýle usulda hususy häsiýet döredeliň:

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

Klasyň obýektini döredeliň:

javascriptlet user = new User('john', 'smit');

Häsiýetimiziň bahasyny görkezýän usuly çagyralyň:

javascriptconsole.log(user.show());

Häsiýete klasyň daşyndan ýüz tutmak ýalňyşlyga getirmez:

javascriptconsole.log(user._name); // ýalňyşlyk ýok
Задание 1

Aşakdaky koda häsiýetleri hususy ediň:

javascriptclass Employee {
  constructor(name, salary) {
    this.name = name;
    this.salary = salary;
  }
  
  getName() {
    return this.name;
  }
  getSalary() {
    return this.salary;
  }
}
Задание 2

Aşakdaky koda kömekçi usuly hususy ediň:

javascriptclass Employee {
  constructor(name, salary) {
    this.name = name;
    this.salary = salary;
  }
  
  getSalary() {
    return this.addSign(this.salary);
  }
  
  addSign(num) {
    return num + '
;
  }
}