Ero JavaScriptin kutsu-, soveltamis- ja sidontamenetelmien välillä

Porataan se mieleemme ja tehdään sen kanssa lopullisesti.

Kirjoitan tätä mikroviestiä, koska edellä mainittu kysymys on ahdistanut minua hyvin kauan, ja tiesin, etten ollut ainoa. Joka kerta kun näin jonkun käyttävän mitä tahansa näistä kolmesta menetelmästä, minun piti kiirehti MDN: lle selvittääkseen mitä tapahtui.

Tarpeeksi riitti. Tiesin, että minun oli tehtävä jotain ja tein. Oletettavasti olen luonut sananlaskun hopeamallin, joka voi auttaa uusia JavaScript-kehittäjiä.

Vastuuvapauslauseke : Tämä ei ole teoreettinen ratkaisu, mutta todella hakkeroiva tapa muistaa ero.

Suurin syy sekaannukseen menetelmien call()ja apply()menetelmien välillä on, kuinka lisätään muita argumentteja this. Ja miksi meillä on bind()joka tapauksessa?

Joten opitaan, kuinka erottaa nämä kolme helposti.

Käytä()

apply(this [, [arg1, arg2,...]]): Kutsuu funktion, jolla on annettu thisarvo. Lisää argumentteja annetaan yhtenä ryhmänä .

Tapa muistaa : ” pply hyväksyy argumentteja kuin rray” tai ” AA

Puhelu()

call(this [, arg1, arg2...]): Kutsuu toiminnon tarjotulla this. Muut argumentit annetaan pilkuilla erotettuna luettelona

Muistamistavat: "Call-argumentit erotetaan pilkuilla" tai " CC ".

Sitoa()

bind(this): Palauttaa uuden funktion, jonka thisarvo on sidottu annettuun arvoon.

Muistamistavat: bind () on ainoa menetelmä kolmesta, joka palauttaa kokonaan uuden funktion. Se ei kutsu toimintoa.

Paketoida

Toivon, että yllä oleva selitys voi auttaa joitain teistä siellä. Se varmasti auttaa minua.

Onko sinulla muita ohjelmointiin liittyviä temppuja? Jaa ystävällisesti yhteisön kanssa, koska se auttaa kaikkia. Varsinkin noiden haastattelujen aikana.

Jos sinulla on kysyttävää tai epäilet, lyö minut Twitterissä @ rajat1saxena tai kirjoita minulle osoitteeseen [email protected] Suosittele tätä viestiä, jos pidit siitä, ja jaa se verkkoosi.