233 of 264 menu

Metóda bind

Metóda bind slúži na naviazanie kontextu na funkciu. Ako prvý parameter sa odovzdáva kontext a ako nasledujúce parametre - parametre funkcie. Metóda vracia novú funkciu, v ktorej bude this rovné odovzdanému kontextu.

Syntax

funkcia.bind(kontext, parameter1, parameter2...);

Príklad

Majme vstupné pole:

<input id="elem" value="text">

Nech odkaz na toto vstupné pole je uložený v premennej elem:

let elem = document.querySelector('#elem');

Nech máme aj nasledujúcu funkciu func:

function func(param1, param2) { console.log(this.value + param1 + param2); }

Pomocou bind vytvorme novú funkciu, ktorá bude kópiou funkcie func, ale this v nej bude vždy rovné elem:

let newFunc = func.bind(elem);

V premennej newFunc je teraz funkcia. Zavolajme ju, pričom do prvého parametra odovzdajme '1' a do druhého '2':

newFunc('1', '2');

Zhrňme si to všetko dokopy:

let elem = document.getElementById('elem'); function func(param1, param2) { console.log(this.value + param1 + param2); } let newFunc = func.bind(elem); newFunc('1', '2'); // vypíše 'text12'

Príklad

Výsledok práce bind nemusí byť uložený do novej funkcie newFunc, je možné jednoducho prepísať func:

let func = func.bind(elem);

Pozri tiež

  • metóda call,
    ktorá volá funkciu s kontextom
  • metóda apply,
    ktorá volá funkciu s kontextom
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
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť