⊗jsOpBsCOM 23 of 60 menu

ობიექტების მანიპულირება კლასებში OOP-ში 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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა