JavaScript -samtale vs Apply vs Bind

JavaScript -samtale vs Apply vs Bind
Mens programmering i JavaScript, er det situasjoner der det er behov for å integrere funksjonalitetene til et objekt med en brukerdefinert funksjon. Dessuten å bruke en viss ekstra funksjonalitet på det opprettede objektet eller dens eiendom for å bruke en viss drift uten å endre den. I slike tilfeller gir JavaScript "anrop()”,“søke om()”, Og“binde()”Metoder for å takle slike situasjoner.

Denne artikkelen vil diskutere forskjellene mellom samtalen (), anvende () og bind () metoder.

JavaScript Call () vs Apply () vs Bind () Methods

Call () Metode

anrop()”Metode påkaller en funksjon med en spesifisert kontekst. Denne metoden kan brukes for å integrere funksjonalitetene til et objekt og en funksjon ved å få tilgang til funksjonen med det refererte objektet som en funksjons parameter sammen med de passerte parametrene samtidig.

Syntaks

ring (ref, args)

I den gitte syntaks:

  • ref”Refererer til verdien som skal brukes som“dette”Når du ringer en funksjon.
  • Args”Peker på argumentene for funksjonen.

Eksempel

La oss følge det under-uttalte eksemplet:

I ovennevnte kodebit, utfør følgende trinn:

  • Opprett et objekt som har den uttalte eiendommen.
  • Etter det, erklærer en funksjon som heter “sumnum ()”Å ha de uttalte parametrene.
  • I sin definisjon, bruk "dette”For å referere til den opprettede objektets egenskap og legge de plasserte parametrene til den.
  • Til slutt får du tilgang til funksjonen og "anrop()”Metode ved å referere til det opprettede objektet og den beståtte parameteren. Dette vil legge til parameterverdiene til objektets eiendoms verdi.

Produksjon

Fra ovennevnte utgang kan det observeres at summen av verdiene til objektets egenskap og pass -parametrene returneres.

Bruk () Metode

Denne metoden er identisk med "anrop()”Metode. Forskjellen i denne metoden er at den tar funksjonsparametrene i form av en matrise.

Syntaks

Apply (Ref, Array)

I syntaks ovenfor:

  • ref”Refererer til verdien som skal brukes som“dette”Når du ringer en funksjon.
  • Array”Angir argumentene i form av en matrise som funksjonen vil bli kalt.

Eksempel

La oss se på følgende eksempel:

I Adobe Code -utdraget, utfør følgende trinn:

  • Gjenta de diskuterte trinnene i eksemplet med “anrop()”Metode for å lage et objekt, erklære en funksjon med parametere og referere til objektet.
  • Til slutt får tilgang til den definerte funksjonen ved å inneholde det refererte objektet som den første parameteren og funksjonens parameterverdier i form av en matrise.
  • Dette vil på samme måte resultere i å returnere summen av objektet og bestått parameterverdier.

Produksjon

Fra opsjonen ovenfor er det tydelig at den ønskede summen returneres.

Bind () -metode

binde()”Metoden utfører ikke en funksjon umiddelbart, snarere, den returnerer en funksjon som kan utføres senere.

Syntaks

Bind (Ref, Args)

I syntaks ovenfor:

  • ref”Tilsvarer verdien som skal sendes som“dette”Parameter til målfunksjonen.
  • Args”Refererer til argumentene for funksjonen.

Eksempel

La oss følge det gitte eksemplet for å forstå tydelig:

I ovennevnte JavaScript -kode, utfør følgende trinn:

  • Husk de diskuterte trinnene for å lage et objekt og definere en funksjon som har de uttalte parametrene.
  • I neste trinn, bruk "binde()”Metode og gjenta den samme prosedyren for å inneholde det opprettede objektet og de passerte parameterverdiene for å returnere summen.
  • Her lagrer de utførte funksjonalitetene i forrige trinn i en “på linje”Funksjon som heter“UpdFunction ()”Som også kan brukes senere.

Produksjon

I ovennevnte utgang er det tydelig at ved å kalle de uttalte “på linje”Funksjon, summen returneres som et resultat.

Eksempel: Bruk samtale (), bruk () og bind () med samme objekt og funksjon

I dette eksemplet, bruk de diskuterte metodene på et enkelt objekt ved hjelp av en funksjon.

La oss følge det undergitte eksemplet trinn for trinn:

I kodelinjene ovenfor, utfør følgende trinn:

  • Gjenopplive de diskuterte trinnene for å lage et objekt, erklære en funksjon som har de uttalte parametrene.
  • I den videre koden får du tilgang til den definerte funksjonen med hver diskuterte metode.
  • Det kan observeres at alle tre metodene brukes annerledes sammen med funksjonen, men gir samme utgang, som tydelig nedenfor.

Produksjon

Fra output ovenfor kan det sees at alle metodene gir samme utgang.

Konklusjon

anrop()”Og“søke om()”Metoder kan implementeres for å integrere funksjonalitetene til et objekt og en funksjon ved å passere parameterverdiene ganske enkelt og i form av en matrise, henholdsvis. “binde()”Metode kan også brukes på samme måte. Den ekstra funksjonaliteten i denne metoden er at den lagres i en funksjon som skal brukes senere. Denne opplæringen forklarte forskjellene mellom samtalen (), anvend () og bind () metoder.