The JavaScriptče stavek izvede dejanje, ki temelji na pogoju, skupnem scenariju v vseh programskih jezikih. The če stavek preizkusi nekaj podatkov pred pogojem in nato poda neko kodo, ki jo je treba izvesti, če je pogoj resničen, tako:
če je stanje {
izvedite to kodo
}
The če stavek je skoraj vedno seznanjen z drugače stavek, ker običajno želite določiti nadomestni bit kode, ki se izvrši. Poglejmo primer:
if (ime „Stephen“) {
message = "Dobrodošli nazaj Stephen";
} else {
message = "Dobrodošli" + ime;
}
Ta koda vrne "Dobrodošli nazaj Stephen", če ime je enako Stephenu; v nasprotnem primeru vrne "Dobrodošli" in nato ne glede na vrednost spremenljivke ime vsebuje.
Krajša izjava o IF
JavaScript nam omogoča alternativni način pisanja če stavek, kadar tako resnični kot napačni pogoji isti spremenljivki dodelijo različne vrednosti.
Ta krajši način izogne ključno besedo če kot tudi naramnice okoli blokov (ki so izbirne za posamezne stavke). Vrednost, ki jo postavljamo v resničnih in napačnih pogojih, premaknemo tudi v prednji del svoje enotne izjave in vdelamo ta nov slog če izjavo v samo izjavo.
Takole je videti:
spremenljivka = (pogoj)? resnična vrednost: napačna vrednost;
Torej naše če izjavo od zgoraj bi lahko zapisali v eno vrstico kot:
message = (ime 'Stephen')? "Dobrodošli nazaj Stephen": "Dobrodošli" + ime;
Kar se tiče JavaScripta, je ta izjava enaka kot daljša koda od zgoraj.
Edina razlika je v tem, da tako pisanje izjave dejansko zagotavlja JavaScript z več informacijami o tem, kaj počne izjava. Koda lahko deluje bolj učinkovito, kot če bi jo napisali na daljši in bolj berljiv način. Temu se reče tudi a ternarni operater.
Dodelitev več vrednosti eni sami spremenljivki
Ta način kodiranja stavka if lahko pomaga preprečiti dobesedno kodo, zlasti v ugnezdena, če izjave. Na primer, upoštevajte ta niz ugnezdenih stavkov if / else:
var odgovor;
če (a == b) {
če (a == c) {
odgovor = "vsi so enaki";
} else {
answer = "a in b sta enaka";
}
} else {
če (a == c) {
answer = "a in c sta enaka";
} else {
če (b == c) {
odgovor = "b in c sta enaka";
} else {
answer = "vsi so različni";
}
}
}
Ta koda posamezni spremenljivki dodeli eno od petih možnih vrednosti. S pomočjo tega alternativnega zapisa lahko to občutno skrajšamo na samo eno izjavo, ki vključuje vse pogoje:
var odgovor = (a == b)? ((a == c)? "vsi so enaki":
"a in b sta enaka"): (a == c)? "a in c sta enaka": (b == c)?
"b in c sta enaka": "vsi so različni";
Upoštevajte, da je ta zapis mogoče uporabiti samo, kadar vse različni pogoji, ki se preskušajo, pripisujejo različnim vrednostim enako spremenljivka.