⊗jsOpAdNC 44 of 60 menu

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

Имената на свойствата и методите не трябва да съвпадат, това ще причини конфликт. Нека разгледаме пример. Да предположим, че имаме следния клас:

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

Нека създадем обект от този клас:

let user = new User;

Нека извикаме неговия метод, за сега всичко ще работи:

user.name(); // работи

А сега нека запишем данни в едноименното свойство, като по този начин презапишем кода на метода:

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

За да избегнете подобни конфликти, винаги давайте на методите имена-глаголи, а на свойствата - имена-съществителни.

Поправете грешката, допусната в следния код:

class Employee { constructor(salary) { this.salary = salary; } salary() { return this.salary + ' ; } }
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне