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:
javascriptclass 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:
javascriptclass UsersCollection {
}
Do të ruajmë objektet me përdorues në formën e një array në një pronë private:
javascriptclass UsersCollection {
#users;
constructor() {
this.#users = [];
}
}
Le të bëjmë një metodë për shtimin e një përdoruesi të ri në array:
javascriptclass 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:
javascriptclass 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:
javascriptlet uc = new UsersCollection;
Tani le të shtojmë në koleksionin tonë disa përdorues:
javascriptuc.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:
javascriptuc.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.