⊗jsOpBsCOM 23 of 60 menu

Objektide manipuleerimine klassides OOP-s JavaScriptis

Klassid saavad meetodite parameetritena võtta vastu teiste klasside objekte ja neid objekte manipuleerida. Vaatame näidet. Olgu meil järgmine klass:

class User { #name; constructor(name) { this.#name = name; } getName() { return this.#name; } }

Oletame, et otsustasime teha klassi, mis manipuleerib kasutajate objektide kogumiga:

class UsersCollection { }

Hoiame kasutajate objekte massiivi kujul privaatse omadusena:

class UsersCollection { #users; constructor() { this.#users = []; } }

Teeme meetodi uue kasutaja lisamiseks massiivi:

class UsersCollection { #users; constructor() { this.#users = []; } add(user) { this.#users.push(user); } }

Ja nüüd teeme meetodi, mis väljastab konsooli kõikide kasutajate nimed:

class UsersCollection { #users; constructor() { this.#users = []; } add(user) { this.#users.push(user); } show() { for (let user of this.#users) { console.log(user.getName()); } } }

Vaatame meie klassi töötamist. Kõigepealt loome selle objekti:

let uc = new UsersCollection;

Nüüd lisame meie kogumisse mõne kasutaja:

uc.add(new User('john')); uc.add(new User('eric')); uc.add(new User('kyle'));

Ja nüüd kutsume välja meetodi, mis väljastab konsooli kõikide kasutajate nimed:

uc.show();

Tehke klass EmployeesCollection, mis sisaldab töötajate massiivi.

Tehke selles klassis meetod uue töötaja lisamiseks.

Tehke selles klassis meetod kõikide töötajate väljastamiseks.

Tehke selles klassis meetod kõikide töötajate kogupalga arvutamiseks.

Tehke selles klassis meetod kõikide töötajate keskmise palga arvutamiseks.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu