⊗jsOpBsPOS 15 of 60 menu

Zasebnost v starem slogu v OOP v JavaScript

Deklaracija zasebnih lastnosti in metod prek simbola # se je v JavaScriptu pojavila šele pred kratkim. Pred tem so morali uporabljati posebno zapleteno tehniko.

Bistvo te tehnike je v sklenitvi dogovora, da se morajo imena zasebnih lastnosti in metod začeti s podčrtajem. Dejansko ta imena ne bodo zasebna, vendar se dogovorimo, da jih ne bomo uporabljali zunaj razreda.

Poskusimo. Naredimo zasebno lastnost v tem slogu:

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

Ustvarimo objekt razreda:

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

Pokličimo metodo, ki prikaže vrednost naše lastnosti:

console.log(user.show());

Poskus dostopa do lastnosti od zunaj razreda ne bo povzročil napake:

console.log(user._name); // ni napake

V naslednji kodi naredite lastnosti zasebne:

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

V naslednji kodi naredite pomožno metodo zasebno:

class Employee { constructor(name, salary) { this.name = name; this.salary = salary; } getSalary() { return this._addSign(this.salary); } _addSign(num) { return num + '€'; } }
Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni