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 классини ясанг,
у ишчилар массивини ўз ичига олади.
Ушбу классда янги ишчини қўшиш учун метод ясанг.
Ушбу классда барча ишчиларни чиқариш учун метод ясанг.
Ушбу классда барча ишчиларнинг жами маошини хисоблаш учун метод ясанг.
Ушбу классда барча ишчиларнинг ўртача маошини хисоблаш учун метод ясанг.