⊗jsOpBsCOM 23 of 60 menu

Manipolazione di oggetti nelle classi in OOP in JavaScript

Le classi come parametri di metodi possono accettare oggetti di altre classi e manipolare questi oggetti. Diamo un'occhiata a un esempio. Supponiamo di avere la seguente classe:

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

Supponiamo di voler creare una classe che manipolerà una raccolta di oggetti utente:

class UsersCollection { }

Memorizzeremo gli oggetti utente come array in una proprietà privata:

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

Creiamo un metodo per aggiungere un nuovo utente all'array:

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

E ora creiamo un metodo che stamperà nella console i nomi di tutti gli utenti:

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

Diamo un'occhiata al funzionamento della nostra classe. Per iniziare creiamo il suo oggetto:

let uc = new UsersCollection;

Ora aggiungiamo alla nostra collezione diversi utenti:

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

E ora chiamiamo il metodo che stamperà nella console i nomi di tutti gli utenti:

uc.show();

Crea una classe EmployeesCollection, che conterrà un array di dipendenti.

Crea in questa classe un metodo per aggiungere un nuovo dipendente.

Crea in questa classe un metodo per visualizzare tutti i dipendenti.

Crea in questa classe un metodo per calcolare il salario totale di tutti i dipendenti.

Crea in questa classe un metodo per calcolare il salario medio di tutti i dipendenti.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta