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ščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць