Jaka jest różnica między wezwaniem i wiązaniem w JavaScript

Jaka jest różnica między wezwaniem i wiązaniem w JavaScript
Istnieje wiele metod wykorzystywanych do różnych celów, w tym „stosować()”,„dzwonić()", I "wiązać()„Metody, które pozwalają zmodyfikować kontekst„Ten”Słowo kluczowe, które jest obecne w funkcji wywołania. Ponadto metody zastosowania () i call () w celu wykorzystania zmiennej „tej” do określonej funkcji, a także wywołać funkcję. Podczas gdy metoda bind () ustawia to tylko na funkcję.

Ten post wyjaśni różnicę/rozróżnienia między metodami Call (), Apply () i powiązania metod JavaScript.

Jaka jest różnica/rozróżnienie między call () Apply () i bind () w JavaScript?

Różnica między metodami Call (), Apply () i Bind () jest następująca:

  • Wszystkie trzy metody wykorzystują „Ten”Argument funkcji.
  • Metody Apply () i Call () Ustaw to na funkcję i wywołują funkcję.
  • Metoda BIND () ustawi to tylko na funkcję. Będzie musiał wywołać funkcję osobno.

Jak wykorzystać metody Call (), Apply () i bind () w JavaScript?

Aby wykorzystać metody Call (), Apply () i Bind (), sprawdź podane przykłady omówione poniżej:

Przykład 1: Za pomocą metody „call ()” w JavaScript

„„dzwonić()”Metoda wywołuje funkcję i przyczepiają„Ten„Wartość do tego. Akceptuje „to” jako parametr wraz z listą argumentów. Następnie zwraca wartość dostarczoną przez wywołaną funkcję za pomocą metody Call (). Aby to zrobić, nazwaliśmy FUNC za pomocą metody Call ():

funkcja func (arg1, arg2)
konsola.Log (to.num, arg1, arg2);

Metoda wywołania wywoła funkcję wraz z argumentami przekazanymi do funkcji:

Func.Call (num: 70, 60, 20);

Przykład 2: Za pomocą metody „Apply ()” w JavaScript

Funkcja jest wywoływana przez „stosować()„Metoda, która również wiąże„ ”Ten„Wartość do funkcji. Wywołuje funkcję za pomocą metody zastosowania, która zwraca wartość, i akceptuje tę wartość i pojedynczy obiekt tablicy jako dane wejściowe:

Test funkcyjny (… argumenty)
konsola.Log (to.num, argumenty);

W określonym przykładzie metoda zastosowania wywołuje funkcję, a obiekt jest przekazywany do metody Apply ().

test.Apply (num: 100, [1,8,11,18]);

Przykład 3: Za pomocą metody bind () w JavaScript

„„wiązać()„Metoda tworzy nową funkcję i wiąże tę wartość z funkcją. Ale nadal istnieje potrzeba samodzielnego wywołania zwróconej metody. W tym kodzie wiążymy „Ten„Zmienna dla funkcji testowej:

test funkcji (arg)
konsola.Log (to.liczba, arg);

Następnie wywołaj funkcję zwracającą za pomocą metody BIND.

Niech bakedfn = testuj.bind (numer: 80, „argument”);

Wreszcie, wywołać funkcję bezpośrednio:

bakedfn ();

Chodzi o różnicę między metodami Call (), Apply () i bind () w JavaScript.

Wniosek

Główną różnicą między metodami Call (), Apply () i bind () w JavaScript jest to, że „stosować()" I "dzwonić()„Metody wykorzystują”Ten”Zmienna do określonej funkcji, a także wywołuje funkcję. Natomiast "wiązać()”Metoda ustawia to tylko na funkcję. W tym poście stwierdzono rozróżnienia między Call (), bind () i Apply () w JavaScript.