Atšķirība starp JavaScript izsaukuma, pielietošanas un saistīšanas metodēm

Iedziļināsim to savās domās un izdarīsim to vienreiz un uz visiem laikiem.

Es rakstu šo mikro ierakstu, jo iepriekšminētais jautājums mani vajāja ļoti ilgu laiku, un es zināju, ka es neesmu vienīgais. Katru reizi, kad redzēju, ka kāds izmanto kādu no šīm trim metodēm, man bija jāsteidzas uz MDN, lai saprastu, kas notiek.

Pietika ar pietiekamu daudzumu. Es zināju, ka man kaut kas jādara, un es to arī izdarīju. Es it kā esmu izveidojis sakāmvārdu sudraba lodi, kas var palīdzēt jaunajiem JavaScript izstrādātājiem.

Atruna : tas nav teorētisks risinājums, bet patiešām nejauks veids, kā atcerēties atšķirību.

Galvenais neskaidrību cēlonis starp metodēm call()un apply()metodēm ir tas, kā papildus norādīt papildu argumentus this. Un kāpēc mums tā vispār ir bind()?

Tātad, iemācīsimies viegli atšķirt trīs.

Lietot ()

apply(this [, [arg1, arg2,...]]): Izsauc funkciju ar norādīto thisvērtību. Citi argumenti tiek sniegti kā viens masīvs .

Veids, kā atcerēties : " pply pieņem argumentus kā A rray" vai " AA "

Zvanīt ()

call(this [, arg1, arg2...]): Izsauc funkciju ar norādīto this. Citi argumenti tiek sniegti kā komatatdalīts saraksts

Atmiņas veidi: “Zvana argumenti tiek atdalīti ar komatiem” vai “ CC ”.

Saistīt()

bind(this): Atgriež jaunu funkciju, kuras thisvērtība ir saistīta ar norādīto vērtību.

Atmiņas veidi: bind () ir vienīgā metode no trim, kas pavisam atgriež jaunu funkciju. Tā funkciju neizsauc.

Satīt

Es ceru, ka iepriekš minētais paskaidrojums varētu palīdzēt dažiem no jums tur. Tas noteikti man palīdz.

Vai jums ir citi iegaumēšanas triki, kas saistīti ar programmēšanu? Lūdzu, dalieties tajā ar kopienu, jo tas visiem palīdzēs. Īpaši šo interviju laikā.

Ja jums ir kādi jautājumi vai šaubas, ieslēdziet mani vietnē Twitter @ rajat1saxena vai rakstiet man uz [email protected]@raynstudios.com. Lūdzu, iesakiet šo ziņu, ja jums tas patika, un kopīgojiet to ar savu tīklu.