⊗jsOpAdNC 44 of 60 menu

Menetelmien ja ominaisuuksien nimien ristiriidat OOP:ssa JavaScriptissä

Ominaisuuksien ja menetelmien nimet eivät saa osua yhteen, se aiheuttaa ristiriidan. Katsotaanpa esimerkkiä. Olkoon meillä seuraava luokka:

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

Luodaan tämän luokan olio:

let user = new User;

Kutsutaan sen menetelmää, toistaiseksi kaikki toimii:

user.name(); // toimii

Kirjoitetaan nyt data samannimiseen ominaisuuteen, ylikirjoittaen näin menetelmän koodin:

user.name = 'str'; user.name(); // virhe

Tällaisten ristiriitojen välttämiseksi anna aina menetelmille verbi-nimiä ja ominaisuuksille substantiivi-nimiä.

Korjaa seuraavassa koodissa tehty virhe:

class Employee { constructor(salary) { this.salary = salary; } salary() { return this.salary + ' ; } }
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää