JavaScript Call Method

JavaScript Call Method

anrop()”Er en forhåndsdefinert JavaScript -metode som brukes til å ringe metoder for forskjellige objekter. JavaScript Call () -metoden påberopes mens du tar objektseieren som et argument. I denne situasjonen "dette”Søkeord refererer til objektet eller eieren som metoden tilhører. I JavaScript anses alle funksjoner som objektmetoder, og hvis det ikke er tilfelle, vil funksjonen bli brukt som et globalt objekt.

Denne oppskrivningen vil diskutere JavaScript Call () -metoden. Videre vil vi også demonstrere hvordan du bruker JavaScript Call () -metoden for å lenke objektkonstruktørene og funksjonslån ved hjelp av eksempler. Så la oss starte!

JavaScript Call () -metode

En normal funksjon anses som et forekomst av "Funksjon”Type. For eksempel har vi laget en eksempler på display () -funksjonen som vil ha en viss kode i kroppen:

funksjonsdisplay ()
// Body of the Function

Nå, sjekk assosiasjonen mellom displayet () -funksjonen og "Funksjon”Ved å utføre det undergitte”konsoll.Logg()”Funksjon. Det kommer tilbake “ekte”, Som vår definerte display () -funksjon er en forekomst av“Funksjon”Type:

konsoll.Logg (vis forekomstfunksjon);

Syntaks av JavaScript Call () -metoden

I JavaScript, "Funksjon”Type omfatter en metode”anrop()”Som har følgende syntaks:

funksjonsnavn.Ring (ThisAg, Arg1, Arg2, ...);

Som du kan se i syntaksen, "anrop()”Metoden vil påkalle funksjonen”funksjonsnavn”. Det første argumentet, “Thisarg”Av samtalemetoden, representerer”dette”Verdi, og den tillater også å angi verdien av“dette”Til et spesifisert objekt. De gjenværende argumentene, for eksempel “Arg1”,“Arg2”... kan være de normale argumentene for den opprettede funksjonen.

Eksempel 1: Bruke JavaScript Call () -metode

Etter å ha definert en funksjon i JavaScript, må vi påkalle den til slik at den kan utføre de ekstra operasjonene. I denne situasjonen, når den opprettede funksjonen kalles, påkaller JavaScript -funksjonen Call () -metoden for den funksjonen.

For eksempel har vi laget en DisplayFunc () som vil vise en streng "Dette er Linuxhint.com”På konsollvinduet:

funksjon displayFunc ()
konsoll.Logg ('Dette er Linuxhint.com ');

Nå vil vi påkalle vår DisplayFunc () Funksjon ved hjelp av funksjonsnavnet:

displayFunc ();

Det vil vise deg følgende utgang:

Påkalle DisplayFunc () -funksjon eller påkalle Call () Metode for DisplayFunc () -funksjon vil vise samme utgang:

DisplayFunc.anrop();


Inne i en funksjon, “dette”Verdien er satt til det globale objektet som standard, som er“global”På noden.JS og “vindu”På nettlesere. Å utføre den undergitte funksjonen vil hjelpe deg å forstå dette konseptet:

funksjon displayFunc ()
konsoll.logg (dette);

Ved å ringe DisplayFunc (), verdien av "dette”Som er satt til“vindu”Objekt, vil bli returnert:

displayFunc ();

Eksempel 2: Bruke JavaScript Call () -metode

Først av alt vil vi lage en "sum()”Funksjon med parametrene”x”Og“y”. Inne i kroppen til “sum()”Funksjon, vi vil legge til koden for å returnere tillegg av de beståtte argumentene:

funksjon sum (x, y)
returner x + y;

Nå, i stedet for å ringe "sum()”Funksjon direkte, har vi brukt“anrop()”Metode for å påkalle vår skapte”sum()”Funksjon. Her, i dette tilfellet, verdien av “dette”Vil bli satt til det globale objektet:

La resultatet = sum.Ring (dette, 89, 98);
konsoll.logg (resultat);

Ta en titt på det medfølgende eksemplet og dets utdata:

Eksempel 3: Bruke JavaScript Call () -funksjonen

I dette eksemplet vil vi for det første lage en "hilsen”Variabel:

var hilsen = 'hei';

Deretter vil vi definere en "beskjed”Objekt som har en eiendom som heter”hilsen”:

var melding =
Hilsen: 'Hei'

Etter å ha gjort det, vil vi lage en “Velkommen()”Funksjon. Inne i "Velkommen()”Funksjon, vi vil referere til“hilsen”Variabel med“dette”Verdi:

funksjon velkommen (navn)
konsoll.Logg (dette.hilsen + " + navn);

Nå, hvis vi påkaller “Velkommen()”Melding mens du passerer”dette”Og 'merke'Som argumenter vil det vise den undergitte utgangen:

Velkommen.Ring (dette, 'Mark');

I det andre tilfellet kan du også påkalle "Velkommen()”Funksjon med“anrop()”Metode mens du passerer“beskjed”Objekt som verdien av“dette”:

Velkommen.ring (melding, 'merke');

Når du gjør det, vil du se en streng "Hei Mark”Som utgang:

Kjede objektkonstruktører ved bruk av JavaScript call () -metode

Du kan også bruke Call () -metoden for å kjede objektkonstruktører. Vet ikke hvordan du gjør det? Sjekk ut følgende eksempel.

Eksempel: kjetting av objektkonstruktører ved bruk av JavaScript call () -metode

For å vise deg hvordan du kan kjede objektkonstruktører ved å bruke “anrop()”Metode, for det første lager vi en objekt () -funksjon med to parameters lengde og bredde:

funksjonsobjekt (lengde, bredde)
dette.lengde = lengde;
dette.bredde = bredde;

Deretter vil vi lage en annen “Widget ()”Funksjon som omfatter tre parametere: lengde, bredde og farge. For å tildele verdien til “lengde”Og“bredde”Variabel, vi vil påkalle objektet () -funksjonen med Call () -metoden. For "farge”Variabel, verdien vil bli tildelt innenfor“Widget ()”Funksjon:

funksjon widget (lengde, bredde, farge)
gjenstand.ring (dette, lengde, bredde);
dette.farge = farge;

Nå vil vi lage en ny “widget”Objekt som har en lengde”90”, Bredde”70”, Og farge som“blå”Verdier:

La widget = ny widget (90,70, 'blå');
konsoll.logg (widget);

Sjekk ut utdataene fra det ovennevnte eksemplet:

Funksjonslån ved hjelp av JavaScript Call () -metode

Funksjonslån er et konsept der et objekt bruker metoden til et annet objekt. Denne delen vil demonstrere prosedyren for funksjonslån ved hjelp av JavaScript Call () -metoden.

Eksempel: Funksjonslån ved hjelp av JavaScript Call () -metode

For å forklare funksjonslån, er det første vi trenger å gjøre å lage to objekter og definere noen funksjoner for hver av dem. For å gjøre det, vil vi legge til en "sykkel”Objekt, å ha et“Navn”Eiendom og tre enkle metoder: start (), speedup () og stopp ():

const sykkel =
Navn: 'Bike',
Start: funksjon ()
konsoll.Logg ('Start ditt' + dette.Navn);
,
speedUp: funksjon ()
konsoll.Logg ('Speed ​​opp din' + dette.Navn)
,
stopp: funksjon ()
konsoll.Logg ('Stopp' + dette.Navn);

;

Etter å ha gjort det, vil vi lage et annet objekt, “fly”Som inneholder en“Navn”Eiendom og en“fly”Funksjon:

const fly =
Navn: 'Fly',
Fly: funksjon ()
konsoll.Logg ('Fly ditt fly');

;

Nå vil vi bruke metoden “Call ()” for å påkalle “start”Metode for“sykkel”Objekt på“fly”Objekt:

sykkel.start.ring (fly);

Som du ser fra utgangen som vi har lånt metoden for sykkelobjektet for flyobjektet:

Konklusjon

I JavaScript er Call () en innebygd metode som kan brukes til å påkalle et objekts metode eller funksjon som den første parameteren. Du kan også bruke JavaScript Call () -metoden med et objekt for bruk av en metode som tilhører et annet objekt. Denne oppskrivningen diskuterte JavaScript Call () -metoden. Dessuten har vi også demonstrert bruken av JavaScript Call () -metoden for å lenke objektkonstruktørene og funksjonslån ved hjelp av eksempler.