Конфликти имена метода и својстава у ООП-у у JavaScript-у

Имена својстава и метода не би требало да се поклапају, то ће изазвати конфликт. Хајде да погледамо на примеру. Рецимо да имамо следећу класу:

javascriptclass User {
  name() {
    console.log('method');
  }
}

Направимо објекат ове класе:

javascriptlet user = new User;

Позовимо његов метод, за сада све ће радити:

javascriptuser.name(); // ради

А сада уписујмо податке у истоимено својство, тиме пребрисавши код метода:

javascriptuser.name = 'str';
user.name(); // грешка

Да бисте избегли овакве конфликте увек дајте методима имена-глаголе, а својствима - имена-именице.

Задание 1

Исправите грешку, направљену у следећем коду:

javascriptclass Employee {
  constructor(salary) {
    this.salary = salary;
  }
  salary() {
    return this.salary + '
;
  }
}