Manipulimi i objekteve në klasat në OOP në JavaScript
Klasat si parametra metodave mund të pranojnë objekte nga klasa të tjera dhe t'i manipulojnë këto objekte. Le të shohim një shembull. Le të themi se kemi klasën e mëposhtme:
class User {
#name;
constructor(name) {
this.#name = name;
}
getName() {
return this.#name;
}
}
Le të themi se kemi vendosur të bëjmë një klasë, që do të manipulojë një grup objektesh me përdorues:
class UsersCollection {
}
Do të ruajmë objektet me përdorues në formën e një array në një pronë private:
class UsersCollection {
#users;
constructor() {
this.#users = [];
}
}
Le të bëjmë një metodë për shtimin e një përdoruesi të ri në array:
class UsersCollection {
#users;
constructor() {
this.#users = [];
}
add(user) {
this.#users.push(user);
}
}
Dhe tani le të bëjmë një metodë që do të shfaqë në konsol emrat e të gjithë përdoruesve:
class UsersCollection {
#users;
constructor() {
this.#users = [];
}
add(user) {
this.#users.push(user);
}
show() {
for (let user of this.#users) {
console.log(user.getName());
}
}
}
Le të shohim funksionimin e klasës sonë. Së pari le të krijojmë objektin e saj:
let uc = new UsersCollection;
Tani le të shtojmë në koleksionin tonë disa përdorues:
uc.add(new User('john'));
uc.add(new User('eric'));
uc.add(new User('kyle'));
Dhe tani le të thërrasim metodën që do të shfaqë në konsol emrat e të gjithë përdoruesve:
uc.show();
Bëni klasën EmployeesCollection,
që do të përmbajë një array punonjësish.
Bëni në këtë klasë një metodë për shtimin e një punonjësi të ri.
Bëni në këtë klasë një metodë për shfaqjen e të gjithë punonjësve.
Bëni në këtë klasë një metodë për llogaritjen e pagës totale të të gjithë punonjësve.
Bëni në këtë klasë një metodë për llogaritjen e pagës mesatare të të gjithë punonjësve.