JavaScript-ում OOP-ի մասնավոր հատկությունները

Օբյեկտի այն հատկությունները, որոնք կարելի է կարդալ և գրել դրսից, կոչվում են հանրային: Գոյություն ունեն նաև մասնավոր հատկություններ, որոնք հասանելի կլինեն միայն դասի ներսում:

Մասնավոր հատկությունների անունները պետք է սկսել # նշանով: Բացի այդ, նման հատկությունները պարտադիր պետք է հայտարարվեն դասի կոդի սկզբում: Եկեք դա անենք.

javascriptclass User {
  #name;
}

Այժմ տվյալներ գրենք մեր հատկության մեջ: Դա կարելի է անել, օրինակ, դասի կոնստրուկտորում.

javascriptclass User {
  #name;
  
  constructor(name) {
    this.#name = name;
  }
}

Այժմ ստեղծենք մեթոդ, որը կվերադարձնի մեր հատկության արժեքը.

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

Ստեղծենք դասի օբյեկտ՝ անունը փոխանցելով պարամետրով օգտագործողին.

javascriptlet user = new User('john');

Փորձը ուղղակիորեն դիմելու մեր հատկությանը դասից դուրս կհանգեցնի սխալի.

javascriptconsole.log(user.#name); // սխալ

Մեր մեթոդի կանչը կթույլատրի կարդալ այս հատկությունը.

javascriptconsole.log(user.show()); // կցուցադրի 'john'
Задание 1

Employee դասում ստեղծեք երեք մասնավոր հատկություն՝ անուն, աշխատավարձ և տարիք:

Задание 2

Փոխանցեք կոնստրուկտորին պարամետրով այդ հատկությունների արժեքները:

Задание 3

Ստեղծեք մեթոդ, որը կցուցադրի աշխատողի տվյալները: