Standardparametere i JavaScript | Forklart med eksempler

Standardparametere i JavaScript | Forklart med eksempler
Parametere definerer kravene for å påkalle en funksjon. Ofte påkaller vi en funksjon, men vi savner å innlemme noen argumenter som er nødvendige for utdataene, og JavaScript -funksjonen gir oss en feil eller returnerer en NAN -verdi.

For å unngå dette uønskede resultatet, bruker vi standardparametere. Standardparametere er parametrene som har definert standardverdiene i tilfelle de mangler fra den påkallende funksjonssamtalen.

Vi kommer til å se over et eksempel der vi får et ikke-tilfredsstillende resultat på grunn av manglende argumenter, og så vil vi fikse det ved hjelp av tradisjonelle og standardparametere. Men først, la oss lære litt mer om standardparametrene.

Hva er standardparametere

I ES6 -versjonen introduserte JavaScript en funksjon i å sette opp standardparametere. Når vi utvikler en full-stack-applikasjon, ønsker vi vanligvis å dekke alle endene våre som kan gi oss en hvilken som helst feil. Spørsmålet om manglende argumenter i påkallingsfunksjonssamtalen er et av slike hjørner, og standardparameteren er vakten som vi bruker for å redde oss fra uønskede utfall.

Å erklære standardparametere er ganske enkelt. Når du definerer parameteren til funksjonen, kan du bare sette standardverdien etter “=” skilt. Syntaksen er som:

FunksjonsfunksjonIdentifier (parameter = verdi)
// Body of the Function
;

For eksempel:

FunctionPrintName (FirstName, lastName = 'doe')
konsoll.Log (FirstName + " + LastName);

printName ('John');
PrintName ("John", "Who");

Utgangen fra begge kommandoene er som:

For den første funksjonssamtalen brukte den standardverdien “DOE” for parameteren “LastName”, og for den andre brukte den begge argumentene.

Hvordan fungerer standardparametere

Ved å bruke den samme funksjonen som vi opprettet i eksemplet ovenfor, for det første tilfellet når begge argumentene er til stede, blir verdiene i funksjonssamtalen brukt slik:

Og for det andre tilfellet, der et av argumentene manglet, brukte funksjonen verdien som vi definerte som standardverdien i parameteren som:

Hvorfor bruke standardparametere

Vanligvis når det ikke er gitt noe argument, anses parameteren for å være "udefinert" av JavaScript. Den tradisjonelle eller trivielle tilnærmingen for å unngå en uønsket utgang er å sjekke parameteren for en udefinert verdi. Den trivielle tilnærmingen kan brukes med følgende kodelinjer for en funksjon for å legge til 2 tall:

funksjonAdnumbers (num1, num2)
if (num1 === undefined)
num1 = 1;

if (num2 === undefined)
num2 = 1;

return num1 + num2;

konsoll.log (addnumbers ());

Selv om vi ikke gir noen argumenter når vi ringer funksjonen inne i konsoll.Logg() funksjon, vi får ikke noen feil.

Faktisk er utgangen som:

Som du ser kan vi også håndtere spørsmålet om manglende argumenter som dette. Å være en god programmerer handler imidlertid om å være effektiv, og denne trivielle tilnærmingen er ikke en effektiv løsning.

Hvis vi skulle løse det samme problemet ved å bruke standardparametrene, ville løsningen være mye mer kortfattet som:

funksjon addnumbers (num1 = 1, num2 = 1)
return num1 + num2;

konsoll.log (addnumbers ());

Som du kan se, i stedet for å skrive mange linjer, gjorde vi det i en enkelt linje, og utgangen er nøyaktig den samme uten feil og nei Nan.

Bruke standardparameterverdi fra en tidligere parameter

I ES6 kan du angi en standardparameter ved å bruke parameteren før den. Dette er fordi parametrene initialiseres fra venstre mot høyre. Noe som resulterer i bruk av tidligere definerte parametere i standardverdien til senere parametere.

Ta for eksempel følgende utdrag:

funksjon getome (a, b = a * 2)
returner en * b;

konsoll.logg (getome (2));

Funksjonen Getome () vil ta 2 parametere, hvis det bare er ett argument, vil den tilordne den andre parameteren dobbelt så stor verdi av det første argumentet.

Utgangen er som:

Siden parametrene initialiseres fra venstre mot høyre, hvis vi bruker en senere parameter som standardverdien til en tidligere parameter, vil det resultere i en feil.

Ta følgende kode som et eksempel:

funksjon errorgen (a = b, b = 2)
returner A + B;

konsoll.log (errorgen ());

Ovennevnte vil oppfylle en feil siden den prøver å få tilgang til parameteren “B” allerede før den initialiseres.

Utgangen er som:

Bruke funksjoner som verdier i standardparametere

I ES6 kan du til og med bruke funksjoner som standard parameterverdier. Prøv ut følgende kodelinjer:

funksjon Calc (A, B = getValue (a))
returner A + B;

funksjon getValue (num)
Return Num * 2;

konsoll.logg (beregnet (2));

Som du ser, gir vi funksjonen getValue (num) som standardparameter for b Og vi passerer parameteren en inni det. De getValue (num) multipler argumentet som ble gitt til det med 2 og returnerer verdien. Det er grunnen til at vi passerer 2 inne Calc () Funksjon som en enkelt parameter får vi følgende:

Det er det for standardparametere i JavaScript.

Konklusjon

I ES6 ble en ny funksjon introdusert som var standardparametere. For å unngå å oppfylle en feil på grunn av manglende argumenter, la JavaScript til denne funksjonen. Standardparametere brukes til å sette en standardverdi for et argument i skrivende stund den funksjonen. Vi lærte om standardparametere, hvordan vi kan bruke standardparametere for å unngå ugunstige resultater, og hvorfor vi skal bruke standardparametere som en erstatning til den tradisjonelle/trivielle tilnærmingen sammen med eksemplene.