„JavaScript“ funkcijos susiejimas ()

„JavaScript Function bind“) metodas leidžia objektui skolintis metodą iš kito objekto nekopijuojant.

bind()Metodo sintaksė yra tokia:

 func.bind(thisArg, arg1,… argN)

Čia funcyra funkcija.

bind () parametrai

bind()Metodas trunka:

  • thisArg- reikšmė, pateikta kaip thisparametras func. Jo nepaisoma, jei susieta funkcija sukuriama naudojant naują operatorių.
  • arg1,… argN(neprivaloma) - argumentai, kurie priklauso nuo argumentų, pateiktų susietai funkcijai, kai iškviečiama func.

Pastabos:

  • Naudojant „thisArg“ „setTimeout“ viduje, primityvios reikšmės konvertuojamos į objektus.
  • Jei thisArgnenurodyta, tai vykdymo sritis traktuojama kaip thisArg.

Grąžinimo vertė iš „bind“ ()

  • Grąžina nurodytos funkcijos kopiją su nurodyta šia verte ir pradiniais argumentais (jei numatyta).

Pavyzdys: „bind“ () naudojimas

 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

Rezultatas

 100 1 100

Kai metodas bus perduotas kur nors atskirai nuo objekto, jis thisbus prarastas. Sukūrus susietą funkciją iš funkcijos, naudojant pradinį objektą, tvarkingai išsprendžiama ši problema

Rekomenduojamas skaitymas: „ JavaScript“ funkcijos iškvietimas ()

Įdomios straipsniai...