⊗jsOpBsCOM 23 of 60 menu

Manipulacija objektov v razredih v OOP v JavaScript

Razredi lahko kot parametre metod sprejemajo objekte drugih razredov in manipulirajo s temi objekti. Poglejmo si primer. Recimo, da imamo naslednji razred:

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

Recimo, da smo se odločili narediti razred, ki bo manipuliral nizom objektov uporabnikov:

class UsersCollection { }

Objekte uporabnikov bomo shranjevali v obliki matrike v zasebni lastnosti:

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

Naredimo metodo za dodajanje novega uporabnika v matriko:

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

In zdaj naredimo metodo, ki bo izpisala v konzolo imena vseh uporabnikov:

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

Poglejmo si delovanje našega razreda. Najprej ustvarimo njegov objekt:

let uc = new UsersCollection;

Zdaj dodajmo v našo zbirko nekaj uporabnikov:

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

In zdaj pokličimo metodo, ki bo izpisala v konzolo imena vseh uporabnikov:

uc.show();

Naredite razred EmployeesCollection, ki bo vseboval matriko zaposlenih.

Naredite v tem razredu metodo za dodajanje novega zaposlenega.

Naredite v tem razredu metodo za izpis vseh zaposlenih.

Naredite v tem razredu metodo za izračun skupne plače vseh zaposlenih.

Naredite v tem razredu metodo za izračun povprečne plače vseh zaposlenih.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni