Påkalle en funksjon med en funksjonskonstruktør i JavaScript

Påkalle en funksjon med en funksjonskonstruktør i JavaScript
I JavaScript, påkalle en funksjon med en funksjon “Konstruktør”Er forskjellig fra å påkalle en funksjon som en“metode”Og påkalle det som en“funksjon”Fordi det skaper et nytt objekt som arver konstruktørfunksjonens egenskaper og metoder, og de to andre metodene inkluderer ikke arv. Så sørg for at du bruker riktig metode for å påkalle funksjonen for å utføre JavaScript -kode effektivt.

Denne opplæringen presenterer syntaks og eksempler på å ringe en funksjon ved hjelp av en funksjonskonstruktør. Det vil også skille hvordan funksjonskonstruktøren påkaller metoden er forskjellig fra de to andre metodene. Så la oss starte!

Påkalle en funksjon som funksjonskonstruktør

I det følgende eksempel vil vi lage en "x”Objekt ved å påkalle“Myarg ()”Funksjonskonstruktør:

funksjon myarg (arg1, arg2)
dette.radius = arg1;
dette.høyde = arg2;

var x = ny Myarg (1,2)
konsoll.logg (x);

Utgangen fra dette programmet er gitt nedenfor:

Eksemplet ovenfor definerte først en funksjon "Myarg ()”. Etter det har vi laget en “x”Objekt ved å påkalle“Myarg ()”Funksjon som funksjonskonstruktør. Funksjonskonstruktøren vil da arve egenskapene fra den opprinnelige funksjonen. Vi kan se at bare verdiene ble gitt som argumenter til “Myarg ()”Funksjon, men utgangen viser også egenskapene som er forbundet med dem.

La oss nå sjekke ut de andre metodene for å påkalle en funksjon i JavaScript.

Påkalle en funksjon som en funksjon

Det er enkelt å påkalle en funksjon som en funksjon i JavaScript. Funksjonen oppretter ikke et nytt objekt, men JavaScript vil skape et objekt globalt. Funksjonen vil alltid tilhøre HTML -siden, som er standardobjektet for funksjonen. Vi kan påkalle en funksjon ved bare å bruke navnet og gi argumentene i henhold til de spesifiserte parametrene.

Eksempel: påkalle en funksjon som en funksjon

I dette eksemplet vil vi lage en “MyFunction ()”Med to parametere”en”Og“b”, Og det vil returnere produktet av verdiene til de passerte argumentene:

funksjon myfunksjon (a, b)
returner en * b;

myfunksjon (10, 2); // kommer tilbake 20

Påkalle en funksjon som en metode

JavaScript lar oss også påkalle en funksjon som metode. I eksemplet nedenfor kan vi se at fullnavn -metoden er en funksjon som tilhører et objekt, og "MyObject”Er funksjonseieren. Her "dette”Søkeord brukes også i koden. Verdien av "dette”I denne metoden er det MyObject returnerer.

Eksempel: påkalle en funksjon som en metode

I det undergitte eksemplet har vi laget et objekt som heter “MyObject”Å ha to egenskaper”fornavn”,“etternavn”Og en“fullt navn”Metode. “fullt navn”Metoden tilhører“ MyObject ”og er en funksjon.

For å påkalle "fullname ()" -metode, vil vi ganske enkelt påkalle den ved hjelp av "MyObject”På følgende måte:

const myObject =
FirstName: "Alcei",
LastName: "Jhon",
fullname: funksjon ()
Returner dette.FirstName + "" + dette.etternavn;


MyObject.fullt navn(); // vil returnere "Alice John"

Som du ser fra utgangen, har fullnavn -metoden returnert verdier av “fornavn”Og“etternavn" egenskaper:

Hvorfor bruke en funksjonskonstruktør for å påkalle en funksjon?

Å bruke andre påkallingsmetoder i stedet for funksjonskonstruktører kan forårsake sikkerhets- og ytelsesrelaterte problemer da andre metoder skaper dynamiske funksjoner. Funksjonskonstruktør hjelper til med å lage en funksjon som bare kan utføres i globalt omfang.

Påkalle en funksjon med en ny funksjonskonstruktør

En funksjonskonstruktør krever ett eller flere strengargumenter. Derimot vil det siste argumentet vise funksjonens kropp, som består av de ekstra JavaScript -utsagnene atskilt med semikoloner.

Eksempel: påkalle en funksjon med en ny funksjonskonstruktør

Følgende eksempel viser hvordan du påkaller en funksjon med en ny funksjonskonstruktør:






Klikk på følgende knapp for å ringe funksjonen






Merk

En funksjonskonstruktør vil aldri gi et argument som spesifiserer funksjonsnavnet som er opprettet i koden. Den vil automatisk erklære en funksjon som en anonym funksjon.

Konklusjon

I JavaScript er det å påkalle en funksjon med en funksjonskonstruktør ukarakteristisk og den er basert på arv. Fortsatt har denne metoden for å påkalle funksjoner sine fordeler og kan komme til nytte i visse situasjoner. Denne opplæringen diskuterte prosedyren for å påkalle en funksjon ved hjelp av funksjonskonstruktør. Vi forklarte også forskjellen mellom å påkalle funksjon som funksjonskonstruktør, påkalle funksjon som en metode og påkalle funksjon som en funksjon ved hjelp av eksempler.