АКЦЫЯ: бясплатныя месячныя курсы па стварэнні сайтаў
на выбар: вёрстка, JavaScript, PHP, Python або фрэймворкі. Сёння апошні дзень для запісу! Націскай!
⊗jsOpAdNC 44 of 60 menu

Канфлікты імёнаў метадаў і уласцівасцей у АВП у JavaScript

Імёны ўласцівасцей і метадаў не павінны супадаць, гэта выкліча канфлікт. Давайце паглядзім на прыкладзе. Хай у нас ёсць наступны клас:

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

Створым аб'ект гэтага класа:

let user = new User;

Выклічам яго метад, пакуль усё будзе працаваць:

user.name(); // працуе

А цяпер запiшам дадзеныя ў аднайменную ўласцівасць, зацерушы тым самым код метаду:

user.name = 'str'; user.name(); // памылка

Для пазбягання падобных канфліктаў заўсёды давайце метадам імёны-дзеясловы, а ўласцівасцям - імёны-назоўнікі.

Выправіце памылку, дапушчаную ў наступным у кодзе:

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