⊗jsOpBsPOS 15 of 60 menu

პრივატულობა ძველ სტილში OOP-ში JavaScript-ში

პრივატული თვისებების და მეთოდების დეკლარირება # სიმბოლოს მეშვეობით გამოჩნდა JavaScript-ში სულ ახლახანს. მანამდე მოგვიწევდა გამოგვეყენებინა სპეციალური ჭკვიანური მეთოდი.

ამ მეთოდის არსი ისაა, რომ დაემტკიცება შეთანხმება, რომ პრივატული თვისებების სახელები და მეთოდები უნდა იწყებოდეს ხაზგასმის სიმბოლოთი. რეალურად ასეთი სახელები არ იქნება პრივატული, მაგრამ ჩვენ ვთანხმდებით იმაზე, რომ არ გამოვიყენებთ მათ კლასის გარედან.

მოდით ვცადოთ. შევქმნათ პრივატული თვისება ამ სტილში:

class User { constructor(name) { this._name = name; } show() { return this._name; } }

შევქმნათ კლასის ობიექტი:

let user = new User('john', 'smit');

გამოვიძახოთ მეთოდი, რომელიც გამოსახავს მნიშვნელობას ჩვენი თვისების:

console.log(user.show());

კლასის გარედან თვისებაზე მიმართვის მცდელობა არ გამოიწვევს შეცდომას:

console.log(user._name); // შეცდომა არ არის

შემდეგ კოდში გახადეთ თვისებები პრივატული:

class Employee { constructor(name, salary) { this._name = name; this._salary = salary; } getName() { return this._name; } getSalary() { return this._salary; } }

შემდეგ კოდში გახადეთ დამხმარე მეთოდი პრივატული:

class Employee { constructor(name, salary) { this.name = name; this.salary = salary; } getSalary() { return this._addSign(this.salary); } _addSign(num) { return num + '₾'; } }
ქართული
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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა