⊗jsOpBsCOM 23 of 60 menu

Манипулация на обекти в класове в ООП в JavaScript

Класовете като параметри на методи могат да приемат обекти от други класове и да манипулират тези обекти. Нека да разгледаме пример. Да предположим, че имаме следния клас:

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

Да предположим, че решихме да създадем клас, който ще манипулира набор от обекти с потребители:

class UsersCollection { }

Ще съхраняваме обекти с потребители под формата на масив в частно свойство:

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

Нека създадем метод за добавяне на нов потребител в масива:

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

И сега нека създадем метод, който ще изведе в конзолата имената на всички потребители:

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

Нека да разгледаме работата на нашия клас. Първо, нека създадем негов обект:

let uc = new UsersCollection;

Сега нека добавим към нашата колекция няколко потребителя:

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

И сега нека извикаме метода, който ще изведе в конзолата имената на всички потребители:

uc.show();

Създайте клас EmployeesCollection, който ще съдържа масив от служители.

Създайте в този клас метод за добавяне на нов служител.

Създайте в този клас метод за извеждане на всички служители.

Създайте в този клас метод за изчисляване на общата заплата на всички служители.

Създайте в този клас метод за изчисляване на средната заплата на всички служители.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне