233 of 264 menu

Metode bind

Metode bind piešķir kontekstu funkcijai. Kā pirmo parametru jānorāda konteksts, bet nākamajos parametros - funkcijas parametri. Metode atgriež jaunu funkciju, kurās this būs vienāds ar norādīto kontekstu.

Sintakse

funkcija.bind(konteksts, parametrs1, parametrs2...);

Piemērs

Pieņemsim, ka mums ir ievades lauks:

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

Pieņemsim, ka saite uz šo ievades lauku ir saglabāta mainīgajā elem:

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

Pieņemsim, ka mums ir arī šāda funkcija func:

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

Izmantosim bind, lai izveidotu jaunu funkciju, kas būs funkcijas func kopija, bet this tajā vienmēr būs vienāds ar elem:

let newFunc = func.bind(elem);

Tagad mainīgajā newFunc atrodas funkcija. Izsauksim to, padodot pirmajā parametrā '1', bet otrajā '2':

newFunc('1', '2');

Apvienosim visu kopā:

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

Piemērs

Nav obligāti jāsaglabā bind rezultāts jaunā funkcijā newFunc, var vienkārši pārrakstīt func:

let func = func.bind(elem);

Skatiet arī

  • metode call,
    kas izsauc funkciju ar kontekstu
  • metode apply,
    kas izsauc funkciju ar kontekstu
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt