Hodnota this

Hodnota this odkazuje na aktuální objekt. Tato hodnota je široce používána v JavaScriptu, například ve funkcích a OOP.

Syntaxe

javascriptthis.aktuální objekt;

Příklad

Pomocí this vypišme hodnotu inputu, který ztratí fokus, do konzole:

html<input id="elem" value="text">
javascriptlet input = document.querySelector('#elem');
input.addEventListener('blur', func);

function func() {
  console.log(this.value);
}

Příklad

Pomocí this vypišme hodnotu inputu, který není v fokusu, do konzole:

html<input id="elem" value="text">
javascriptlet input = document.querySelector('#elem');
input.addEventListener('blur', func);

function func() {
  console.log(this.value);
}

Příklad

Nyní se podívejme na použití this v OOP. V třídě Student napíšeme funkci show, která bude zobrazovat jméno a příjmení našeho studenta:

javascriptclass Student {
  name;
  surn;
  
  show() {
    return this.name + ' ' + this.surn;
  }
};
  
let stud = new Student;
stud.name = 'John';
stud.surn = 'Smit';
console.log(stud.show());

Viz také

  • metoda bind,
    která váže kontext k funkci
  • metoda call,
    která volá funkci s kontextem
  • metoda apply,
    která volá funkci s kontextem