Getre imaginárnych vlastností v OOP v JavaScripte

Pomocou prístupových objektov môžeme vytvárať imaginárne vlastnosti, ktoré v objekte v skutočnosti neexistujú. Pozrime sa na príklad. Majme triedu s dvomi verejnými vlastnosťami:

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

Vytvorme tretiu vlastnosť, ktorá bude obsahovať meno a priezvisko. Vytvorme na to prístupovú vlastnosť:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
  
  get full() {
    return this.name + ' ' + this.surn;
  }
}

Skontrolujme. Vytvorme objekt triedy, odovzdajme parametrami meno a priezvisko:

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

Vypíšme hodnoty verejných vlastností:

javascriptconsole.log(user.name); // 'john'
console.log(user.surn); // 'smit'

A teraz vypíšme hodnotu našej imaginárnej vlastnosti:

javascriptconsole.log(user.full); // 'john smit'