233 of 264 menu

Bind metodas

Metodas bind leidžia pririšti kontekstą prie funkcijos. Kaip pirmą parametrą reikia perduoti kontekstą, o tolesniais parametrais - funkcijos parametrus. Metodas grąžina naują funkciją, kurios viduje this bus lygus perduotam kontekstui.

Sintaksė

funkcija.bind(kontekstas, parametras1, parametras2...);

Pavyzdys

Tarkime, kad turime įvesties lauką:

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

Tarkime, kad nuoroda į šį įvesties lauką yra įrašyta į kintamąjį elem:

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

Tarkime, kad taip pat turime šią funkciją func:

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

Naudodami bind sukurkime naują funkciją, kuri bus funkcijos func kopija, bet this joje visada bus lygus elem:

let newFunc = func.bind(elem);

Dabar kintamajame newFunc yra funkcija. Iškvieskime ją, perduodant į pirmą parametrą '1', o į antrą '2':

newFunc('1', '2');

Sujungkime viską kartu:

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

Pavyzdys

Nebūtinai reikia įrašyti bind rezultatą į naują funkciją newFunc, galima tiesiog perrašyti func:

let func = func.bind(elem);

Taip pat žiūrėkite

  • metodas call,
    kuris iškviečia funkciją su kontekstu
  • metodas apply,
    kuris iškviečia funkciją su kontekstu
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti