JavaScript-funksjon bind ()

JavaScript-funksjonen bind () -metoden lar et objekt låne metode fra et annet objekt uten å kopiere.

Syntaksen til bind()metoden er:

 func.bind(thisArg, arg1,… argN)

Her funcer en funksjon.

bind () Parametere

Den bind()metoden tar i:

  • thisArg- Verdien gitt som thisparameter for func. Det ignoreres hvis bundet funksjon opprettes ved hjelp av ny operatør.
  • arg1,… argN(valgfritt) - argumenter for å avhenge av argumenter levert til den bundne funksjonen når de påkaller func.

Merknader:

  • Når du bruker denneArg inne i setTimeout, konverteres primitive verdier til objekter.
  • Hvis thisArgikke er spesifisert, blir dette av det utførende omfanget behandlet som thisArg.

Returverdi fra bind ()

  • Returnerer en kopi av den gitte funksjonen med den spesifiserte denne verdien, og innledende argumenter (hvis de er gitt).

Eksempel: Bruke bind ()

 this.x = 1; // "this" here is the global window object in browser const obj = ( x: 100, getX: function () ( return this.x; ), ); console.log(obj.getX()); // 100 const retrieveX = obj.getX; // the function gets invoked at the global scope console.log(retrieveX()); // 1 // Create a new function with 'this' bound to obj // global variable 'x' with obj's property 'x' are two separate entities const boundGetX = retrieveX.bind(obj); console.log(boundGetX()); // 100

Produksjon

 100 1100

Når en metode er sendt et annet sted enn objektet - thisgår tapt. Å lage en bundet funksjon fra funksjonen ved hjelp av det opprinnelige objektet, løser dette problemet pent

Anbefalt lesing: JavaScript-funksjonssamtale ()

Interessante artikler...