233 of 264 menu

Methode bind

Die Methode bind bindet einen Kontext an eine Funktion. Als ersten Parameter sollte der Kontext übergeben werden, und als folgende Parameter - die Parameter der Funktion. Die Methode gibt eine neue Funktion zurück, in der this gleich dem übergebenen Kontext ist.

Syntax

funktion.bind(kontext, parameter1, parameter2...);

Beispiel

Nehmen wir an, wir haben ein Input-Feld:

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

Nehmen wir an, der Verweis auf dieses Input-Feld ist in der Variable elem gespeichert:

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

Nehmen wir an, wir haben auch die folgende Funktion func:

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

Lassen Sie uns mit bind eine neue Funktion erstellen, die eine Kopie der Funktion func sein wird, aber this darin wird immer gleich elem sein:

let newFunc = func.bind(elem);

Jetzt befindet sich in der Variable newFunc eine Funktion. Lassen Sie uns sie aufrufen, indem wir den ersten Parameter '1' und den zweiten '2' übergeben:

newFunc('1', '2');

Fassen wir alles zusammen:

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

Beispiel

Es ist nicht notwendig, das Ergebnis der Arbeit von bind in einer neuen Funktion newFunc zu speichern. Man kann einfach func überschreiben:

let func = func.bind(elem);

Siehe auch

  • die Methode call,
    die eine Funktion mit Kontext aufruft
  • die Methode apply,
    die eine Funktion mit Kontext aufruft
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικά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
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen