44 of 60 menu

Մեթոդների և հատկությունների անունների հակասություններ OOP-ում 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हिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել