Razlika između JavaScript poziva, primjene i vezanja metoda

Ubušimo to u svoj um i završimo s tim, jednom zauvijek.

Pišem ovaj mikro post jer me spomenuto pitanje progoni već jako dugo i znao sam da nisam jedini. Svaki put kad bih vidio da netko koristi bilo koju od te tri metode morao sam požuriti na MDN kako bih shvatio što se događa.

Dosta je bilo. Znala sam da moram nešto poduzeti i učinila sam. Navodno sam stvorio poslovični srebrni metak koji može pomoći novim JavaScript programerima.

Izjava o odricanju odgovornosti : Ovo nije teoretsko rješenje, već stvarno nesretni način da se zapamti razlika.

Glavni uzrok konfuzije između call()te apply()metode kako proći u dodatnim argumentima osim this. A zašto uopće imamo bind()?

Pa naučimo kako to troje lako razlikovati.

Prijavite se ()

apply(this [, [arg1, arg2,...]]): Poziva funkciju s navedenom thisvrijednošću. Daljnji argumenti dati su kao jedan niz .

Način da zapamtite : „ pply prihvaća argumente kao A rray” ili „ AA

Poziv()

call(this [, arg1, arg2...]): Poziva funkciju s navedenom this. Daljnji argumenti dati su kao popis odvojen zarezom

Načini pamćenja: "Argumenti poziva odvojeni su zarezima" ili " CC ".

Vezati()

bind(this): Vraća novu funkciju čija je thisvrijednost vezana uz navedenu vrijednost.

Načini pamćenja: bind () je jedina metoda od tri koja u potpunosti vraća novu funkciju. Ne poziva funkciju.

Zamotati

Nadam se da bi gornje objašnjenje moglo pomoći nekima od vas vani. Svakako mi pomaže.

Imate li drugih trikova za pamćenje vezanih uz programiranje? Molimo vas podijelite ga sa zajednicom jer će svima pomoći. Pogotovo tijekom tih intervjua.

Ako imate bilo kakvih pitanja ili nedoumica, javite mi se na Twitter @ rajat1saxena ili mi pišite na [email protected] Molimo preporučite ovaj post ako vam se svidio i podijelite ga sa svojom mrežom.