233 of 264 menu

Metod bind

Metod bind veže kontekst za funkciju. Kao prvi parametar treba proslediti kontekst, a sledećim parametrima - parametre funkcije. Metod vraća novu funkciju, unutar koje će this biti jednak prosleđenom kontekstu.

Sintaksa

funkcija.bind(kontekst, parametar1, parametar2...);

Primer

Neka imamo input:

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

Neka je referenca na ovaj input zapisana u promenljivu elem:

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

Neka imamo i sledeću funkciju func:

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

Hajde da pomoću bind napravimo novu funkciju, koja će biti kopija funkcije func, ali će this u njoj uvek biti jednak elem:

let newFunc = func.bind(elem);

Sada u promenljivoj newFunc leži funkcija. Hajde da je pozovemo, prosledivši u prvi parametar '1', a u drugi '2':

newFunc('1', '2');

Hajde da sve sastavimo:

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

Primer

Nije neophodno rezultat rada bind upisivati u novu funkciju newFunc, može se jednostavno prepisati func:

let func = func.bind(elem);

Pogledajte takođe

  • metod call,
    koji poziva funkciju sa kontekstom
  • metod apply,
    koji poziva funkciju sa kontekstom
Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij