Manipulation d'objets dans les classes en POO en JavaScript

Les classes, en tant que paramètres de méthodes, peuvent recevoir des objets d'autres classes et manipuler ces objets. Regardons un exemple. Supposons que nous ayons la classe suivante :

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

Supposons que nous décidions de créer une classe qui manipulera un ensemble d'objets d'utilisateurs :

javascriptclass UsersCollection {
  
}

Nous stockerons les objets d'utilisateurs sous forme de tableau dans une propriété privée :

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

Créons une méthode pour ajouter un nouvel utilisateur au tableau :

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

Et maintenant, créons une méthode qui affichera dans la console les noms de tous les utilisateurs :

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

Regardons le fonctionnement de notre classe. Commençons par créer son objet :

javascriptlet uc = new UsersCollection;

Maintenant, ajoutons à notre collection plusieurs utilisateurs :

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

Et maintenant, appelons la méthode qui affichera dans la console les noms de tous les utilisateurs :

javascriptuc.show();
Задание 1

Créez une classe EmployeesCollection, qui contiendra un tableau d'employés.

Задание 2

Créez dans cette classe une méthode pour ajouter un nouvel employé.

Задание 3

Créez dans cette classe une méthode pour afficher tous les employés.

Задание 4

Créez dans cette classe une méthode pour calculer le salaire total de tous les employés.

Задание 5

Créez dans cette classe une méthode pour calculer le salaire moyen de tous les employés.