233 of 264 menu

Метод bind

Метод bind служи за везивање контекста за функцију. Као први параметар се прослеђује контекст, а наредним параметрима - параметри функције. Метод враћа нову функцију, унутар које this ће бити једнак прослеђеном контексту.

Синтакса

функција.bind(контекст, параметар1, параметар2...);

Пример

Претпоставимо да имамо уносно поље:

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

Претпоставимо да је референца на ово уносно поље записана у променљиву elem:

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

Претпоставимо да имамо и следећу функцију func:

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

Хајде да помоћу bind направимо нову функцију, која ће бити копија функције func, али this у њој ће увек бити једнак elem:

let newFunc = func.bind(elem);

Сада у променљивој newFunc се налази функција. Хајде да је позовемо, проследивши у први параметар '1', а у други '2':

newFunc('1', '2');

Хајде да све то сакупимо:

let elem = document.getElementById('elem'); function func(param1, param2) { console.log(this.value + param1 + param2); } let newFunc = func.bind(elem); newFunc('1', '2'); // исписаће 'text12'

Пример

Није неопходно записати резултат рада bind у нову функцију newFunc, може се једноставно преписати func:

let func = func.bind(elem);

Види још

  • метод call,
    који позива функцију са контекстом
  • метод apply,
    који позива функцију са контекстом
Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј