Hva er ? I JavaScript | Forklart

Hva er ? I JavaScript | Forklart

På slutten av en uttalelse eller setning, et spørsmålstegn (?) brukes til å indikere et direkte spørsmål. Imidlertid har du noen gang møtt et spørsmålstegn på situasjonen i JavaScript -koden og lurt på hva det betydde? Et spørsmålstegn kan utføre forskjellige funksjoner basert på bruken. Du kan bruke den uansett hvor det kreves når du vet hva det er.

Dette innlegget vil demonstrere spørsmålstegnet "?”I JavaScript.

Hva er "?”I JavaScript?

Spørsmålet "?”I JavaScript kan det ha tre forskjellige betydninger. Det brukes i JavaScript som:

    • Ternær operatør
    • NULL KOMPERING OPERATOR
    • Valgfri kjettingsoperatør

“?”Som en ternær operatør i JavaScript

På hvert programmeringsspråk er betingede uttalelser vanligvis representert av "If-Else”Uttalelser. Selv for de enkleste forholdene krever disse utsagnene flere kodelinjer. I et slikt scenario, bruk spørsmålstegnet (?) i JavaScript betingede utsagn som “ternær operatør”.

Ordet "ternary”Betegner et forhold mellom tre elementer, tilstanden, sannhetsblokken og den falske blokken. Tilstanden og sannhetsblokken er atskilt med et spørsmålstegn (?), og tykktarmen (:) skiller sannheten og den falske blokken. Denne operatøren returnerer en boolsk verdi avhengig av evaluering av tilstanden.

Hvordan å bruke "?”Som en ternær operatør?

?”Kan brukes som en ternær operatør som følger:

betingelse ? sant: falsk


Her, “betingelse”Er et uttrykk som må evalueres og gir en boolsk verdi, der“ekte”Er verdien som vil bli brukt hvis tilstanden er sann, og“falsk”Er verdien som vil bli brukt hvis tilstanden er falsk.

Eksempel

Først vil vi lage en variabel “merker”Og tilordne en verdi”78”:

var Marks = 78;


Sjekk deretter om merkene er større enn 60 eller ikke bruker den ternære operatøren. Hvis ja, så skriv ut “Sende”; ellers, “Mislykkes”:

var resultat = (merker> 60) ? "Pass": "mislykkes";


Til slutt, skriv ut resultatet på konsollen ved å bruke "konsoll.Logg()”Metode:

konsoll.logg (resultat);


Tilsvarende utgang er:


La oss diskutere den andre bruken av spørsmålstegnet (?) i JavaScript.

“?”Som en nullkoalescerende operatør i JavaScript

Eller || Operatøren er nyttig. Likevel, i noen tilfeller, vil utviklere bare at den første operanden skal evalueres når den er null eller udefinert. Som et resultat er nullkoalescing -operatøren blitt lagt til ES11. Det er betegnet med et dobbelt spørsmålstegn (??), og det tilhører samme klasse av logiske operatører som logiske eller og og operatører.

Denne operatøren gir operanden på høyre side som output hvis operanden til venstre er “null”Eller“udefinert”. NULL -koalescingoperatøren gjør betingede tester og feilsøkingskode mye enklere.

Hvordan å bruke "?”Som en nullkoalescerende operatør?

Å bruke et spørsmålstegn (?) Som en nullkoalescerende operatør, følg den undergitte syntaks:

uttalelse1 ?? Uttalelse2


Her, “uttalelse1”Og“Uttalelse2”Er de to forholdene som vil bli sjekket på en slik måte at hvis uttalelsen1 er null eller udefinert, er det eneste mulige utfallet uttalelse2, mens hvis det ikke er null eller udefinert da, vil resultatet være uttalelse1.

Eksempel

Vi vil først lage en variabel “Num”Og tildelt en verdi”14”Til det:

var num = 14;


Bruk deretter nullkoalescerende operatør med uttrykk "udefinert”Og“Num”:

var sjekk = udefinert ?? num;


Til slutt, skriv ut resultatet på konsollen:

konsoll.Logg (sjekk);


Utgangen gir verdien av høyre sideoperand som “udefinert”Er til stede på venstre side av nulls samvittighetsoperatør:


Tilsvarende når nøkkelordet "null”Legges til i stedet for“udefinert“Det gir samme resultat, men hvis de andre representasjonene av nullverdien, for eksempel en tom streng "" eller "0”Er på venstre side, vil ikke nulls koalescerende operatør betrakte det som null og gir verdien av venstre sideoperand.

Her vil vi bruke “0”Og nullkoalescerende operatør med variabel”Num”:

var sjekk = 0 ?? num;


Utgangen gir “0”, Venstre-sidig verdi:


Spørsmålstegnet i JavaScript brukes også til ett formål, la oss se det!

“?”Som en valgfri kjettingsoperatør i JavaScript

Valgfri kjettingsoperatør”Brukes som et spørsmålstegn (?) med en prikk (.) og er betegnet som (?.). Denne operatøren kan brukes til å få tilgang til et objekts egenskap eller påkalle en funksjon. I stedet for å kaste en feil, returnerer objektet udefinert hvis det er udefinert eller null. Å bruke denne operatøren er en sikker og effektiv tilgangskontroll for nestede objektattributter.

Hvordan å bruke "?”Som en valgfri kjettingsoperatør?

For kjettingsoperatøren kan du bruke den gitte syntaks:

Gjenstand.Val?.rekvisitt


Her den valgfrie kjedeoperatøren “?”Brukes til å få tilgang til verdien av den spesifiserte objektegenskapen.

Eksempel 1: Å få tilgang til ikke-eksisterende egenskaper til et tomt objekt

Her, først, vil vi lage et tomt objekt som heter “Bruker1”:

var user1 = ;


Få tilgang til de ikke-eksisterende egenskapene med prikken (.) operatør, den vil kaste en feil:

konsoll.Logg (User1.info.Navn);


Produksjon


Mens den valgfrie kjedeoperatøren legges til for å få tilgang til de udefinerte egenskapene, vil den ikke kaste en feil:

konsoll.Logg (User1.info?.Navn);


Utgangen gir udefinert snarere enn feil:


La oss se et eksempel til relatert til denne funksjonaliteten.

Eksempel 2: Å få tilgang til ikke-eksisterende egenskaper til et ikke-tomt objekt

Her vil vi definere egenskapene til objektet og deretter prøve å få tilgang til det nestede objektattributtet som eksisterer i objektet:

var user1 =
Info:
Alder: "20"

;


Bruk den valgfrie kjedeoperatøren for å få tilgang til nestet objekts attributt:

konsoll.Logg (User1.info?.Navn);


Som et resultat, "udefinert”Vises på konsollen:


Vi har samlet all bruk av spørsmålstegnet "?”I JavaScript.

Konklusjon

Spørsmålstegnet (?) i JavaScript har tre forskjellige betydninger, da det kan brukes som "Ternær operatør”, Betegnet som (?), “Null koalescing operator ”som (??), og “Valgfri kjettingsoperatør”Representerer som (?.). Ved hjelp av et spørsmålstegn (?) I JavaScript -kode gjør koden din lesbar og enkelt feilsøkes mens du håndterer feil. I dette innlegget har vi demonstrert hva spørsmålstegnet “?”IS og dets bruk i JavaScript med detaljerte eksempler.