⊗jsOpBsPM 14 of 60 menu

Privátní metody v OOP v JavaScriptu

Privátní nemusí být pouze vlastnosti, ale i metody. Obvykle se privátními dělají pomocné metody, aby nemohly být náhodně volány zvenčí třídy.

Podívejme se na příklad. Předpokládejme, že máme následující třídu:

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

Vytvořme v této třídě privátní metodu, která bude přijímat řetězec jako parametr a převede jeho první znak na velké písmeno:

class User { #name; constructor(name) { this.#name = name; } show() { return this.#name; } #cape(str) { return str[0].toUpperCase() + str.slice(1); } }

Použijme naši pomocnou metodu uvnitř jiné metody:

class User { #name; constructor(name) { this.#name = name; } show() { return this.#cape(this.#name); } #cape(str) { return str[0].toUpperCase() + str.slice(1); } }

Pojďme to ověřit. Vytvořme objekt naší třídy:

let user = new User('john');

Zavolejme veřejnou metodu, která využívá pomocnou metodu:

console.log(user.show());

V následujícím kódu udělejte pomocnou metodu privátní:

class Employee { constructor(name, salary) { this.name = name; this.salary = salary; } getSalary() { return this.addSign(this.salary); } addSign(num) { return num + ' Kč'; } }
Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout