ජාවාස්ක්රිප්ට් හි OOP හි පන්තිවල වස්තු හැසිරවීම
ක්රමවල පරාමිති ලෙස පන්තිවලට වෙනත් පන්තිවල වස්තු පිළිගත හැකිය එම වස්තු හැසිරවීමට. අපි උදාහරණයක් බලමු. අපට පහත පන්තිය ඇති බවට සිතමු:
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 පන්තියක් සාදන්න,
එය සේවකයින්ගේ දර්ශකයක් අඩංගු වේ.
මෙම පන්තිය තුළ නව සේවකයෙකු එකතු කිරීම සඳහා ක්රමයක් සාදන්න.
මෙම පන්තිය තුළ සියලුම සේවකයින් ප්රතිදානය කිරීම සඳහා ක්රමයක් සාදන්න.
මෙම පන්තිය තුළ සියලුම සේවකයින්ගේ මුළු වැටුප් එකතුව ගණනය කිරීම සඳහා ක්රමයක් සාදන්න.
මෙම පන්තිය තුළ සියලුම සේවකයින්ගේ සාමාන්ය වැටුප ගණනය කිරීම සඳහා ක්රමයක් සාදන්න.