En betinget setning lar deg kjøre en kodeblokk basert på en spesifikk tilstand.
JavaScript-språket gir ulike måter å bruke betingede utsagn på. Mange av dem er også felles for andre programmeringsspråk. Men du bør være klar over deres individuelle fordeler og hvordan de fungerer i JavaScript.
1. if-else og else-if-uttalelser
An hvis-annet setningen kjører en blokk hvis tilstanden er sann og den andre blokken hvis den er falsk. En else-if kjører blokken som samsvarer med en av flere betingelser, eller en standardblokk hvis ingen betingelser samsvarer.
En sann verdi er en verdi som JavaScript vurderer ekte når den møter den inn en boolsk kontekst. En falsk verdi er en verdi som JavaScript vurderer falsk når den møter den i en boolsk kontekst.
JavaScript anser alle verdier som sanne med mindre de er en av et lite antall som er falske. De falske verdiene er falsk, 0, -0, 0n, "", null, udefinert, og NaN.
Her er syntaksen for en hvis-annet uttalelse:
if (tilstand) {
// Hvis betingelsen er en sannverdi, vil denne kodeblokken kjøre
} ellers {
// Hvis betingelsen er en falsk verdi, vil denne kodeblokken kjøre
}
I noen tilfeller vil du kanskje sjekke flere relaterte forhold. I disse scenariene kan du bruke en eller hvis for å vurdere de ekstra betingelsene.
For eksempel:
if (tilstand) {
// Hvis betingelsen er sann, vil denne kodeblokken kjøre, og kodeutførelse
// Kommer til å stoppe.
} ellershvis (tilstand_2) {
// Hvis den første betingelsen er falsk, vil denne kodeblokken kjøre hvis condition_2
// er sant
} ellershvis (tilstand_n) {
// Hvis de tidligere betingelsene begge er falske, vil denne kodeblokken kjøre if
// condition_n er sann
} ellers {
// Hvis alle betingelser er feil, vil denne kodeblokken kjøre
}
Ved hjelp av eller hvis utsagn, kan du vurdere så mange forhold du vil. Denne metoden blir imidlertid fort skjemmende og vanskelig å vedlikeholde ettersom antall tilstander øker.
JavaScript gir en renere måte å evaluere flere forhold kalt bytte om uttalelse.
2. Bytteerklæringen
De bytte om statement evaluerer et uttrykk én gang og prøver å matche det mot en eller flere mulige verdier. Du kan oppgi hver potensielt samsvarende verdi etter en sak nøkkelord.
Når switch-setningen finner et samsvar, kjører den alle setningene etter den, til den møter en gå i stykker uttalelse.
Her er syntaksen for switch-setningen:
bytte om (uttrykk) {
sak 'først-sak':
// kjører kode hvis uttrykket samsvarer med dette tilfellet
gå i stykker;sak 'case_2':
// kjører kode hvis uttrykket samsvarer med dette tilfellet
gå i stykker;
misligholde:
// kjører kode hvis uttrykket ikke samsvarer med noen store og små bokstaver
}
De gå i stykker uttalelser er en viktig del av bytte om blokk fordi de spesifiserer hvor koden skal slutte å kjøre. Hvis du går glipp av en break-setning, vil kodekjøringen fortsette og utføre alle de andre kodeblokkene etter den første matchen. Dette er sjelden det du vil at skal skje.
3. Den ternære operatøren
JavaScript lar deg også forkorte betingede utsagn ved å bruke den ternære operatoren.
Den ternære operatøren tar tre operander:
- En betingelse, etterfulgt av et spørsmålstegn (?).
- Et uttrykk etter spørsmålstegnet, og før et kolon (:). Dette vil kjøre hvis tilstanden er sann.
- Et uttrykk etter kolon som vil kjøre hvis tilstanden er falsk.
For eksempel:
tilstand? console.log('Tilstanden er sann'): console.log('Tilstanden er falsk');
Utsagnet ovenfor betyr effektivt "Hvis 'tilstand' er sann, logg den første meldingen, ellers logg den andre meldingen".
4. Kortslutning
Kortslutning er en teknikk som innebærer bruk av de logiske operatoreneELLER (||) og OG (&&) for å evaluere et uttrykk fra venstre til høyre.
En operasjon som involverer OR-operatøren vil kortslutte ved å returnere den første sanne verdien den møter. Hvis alle verdiene i uttrykket er falske, kortslutter det og returnerer den siste falske verdien.
En operasjon som bruker AND-operatoren vil kortslutte ved å returnere den første falske setningen den møter. Hvis alle utsagnene i uttrykket er sanne, kortslutter det og returnerer den siste sannhetsverdien.
Her er et eksempel på å skrive en betinget setning med OR-operatøren.
app.listen (process.env. PORT || 3000)
Denne kortsluttende tilnærmingen til å skrive betingede utsagn er populær i Express-applikasjoner. Den lyder: "hvis HAVN miljøvariabel finnes, bruk den; ellers, bruk port 3000".
Her er et eksempel på å skrive en betinget setning med AND-operatoren.
foo && console.log('foo er definert')
Kodeblokken ovenfor betyr "hvis foo er definert, kaller du funksjonen console.log()".
Denne teknikken er den korteste måten å skrive en betinget på, men den kan gjøre kode vanskeligere å lese. Du bør unngå å bruke det for mye, spesielt når du jobber som en del av et større team.
Viktigheten av betingede erklæringer
Betingede utsagn er det som lar programmet ditt ta avgjørelser. Uten dem vil koden din kjøres i en rett bane fra start til slutt. De er også en del av løkker. Uten dem ville loops kjørt uendelig, og dermed krasjet applikasjonen din.