JavaScript-rede-IF-erklæringer

nesting hvis ellers udsagn hjælper med at organisere og isolere forhold for at undgå at teste den samme tilstand to gange eller for at minimere antallet af gange forskellige tests skal udføres.

Ved hjælp af hvis udsagn med både sammenligning og logiske operatører, kan vi indstille kode, der vil blive kørt, hvis en specifik kombination af betingelser er opfyldt. Vi ønsker ikke altid at teste hele betingelsen for at køre et sæt udsagn, hvis hele testen er sand, og en anden, hvis den er falsk. Vi ønsker måske at vælge mellem flere forskellige udsagn, afhængigt af hvilken bestemt kombination af betingelser er sandt.

Antag f.eks. At vi har tre værdier at sammenligne og ønsker at indstille forskellige resultater afhængigt af hvilke af værdierne der er lige. Følgende eksempel viser, hvordan vi kan reden hvis udsagn, der skal testes for dette (med fed skrift nedenfor)

var svar;

hvis (a == b) {

hvis (a == c) {

answer = "alle er ens";
} andet {
answer = "a og b er ens";
}
} andet {

 hvis (a == c) {

 answer = "a og c er ens";
instagram viewer

 } andet {

hvis (b == c) {

answer = "b og c er ens";
} andet {
answer = "alle er forskellige";
}
 }

}

Sådan fungerer logikken her:

  1. Hvis den første betingelse er sand (
    hvis (a == b)
    ), så kontrollerer programmet for indlejret hvis tilstand (
    hvis (a == c)
    ). Hvis den første betingelse er falsk, støder programmet til andet tilstand.
  2. Hvis indlejret hvis er sandt, udsagnet udføres, dvs. "alle er ens".
  3. Hvis indlejret hvis er falsk, så er andet udsagn udføres, dvs. "a og b er ens".

Her er et par ting at bemærke, hvordan dette kodes:

  • Først oprettede vi variablen svar at holde resultatet, inden vi startede hvis opgørelse, hvilket gør variablen global. Uden dette ville vi have været nødt til at inkludere variablen på fronten af ​​alle tildelingsangivelser, da det ville være en lokal variabel.
  • For det andet har vi indrykket hver indlejrede hvis udmelding. Dette giver os mulighed for lettere at spore, hvor mange indlejrede niveauer af udsagn der er. Det gør det også tydeligere, at vi har lukket det rigtige antal blokke med kode for at fuldføre alle hvis udsagn, som vi åbnede. Du finder måske ud, at det er lettere at sætte seler der først for hver hvis udsagn, før du begynder at skrive koden, der hører inde i den blok.

Vi kan forenkle et afsnit af denne kode lidt for at undgå at skulle reden til hvis udsagn lige så meget. Hvor en helhed andet blok består af en enkelt hvis udsagn, kan vi udelade seler rundt om denne blok og flytte hvis konditioner sig op på samme linje som andet, ved hjælp af betingelsen "andet hvis". For eksempel:

var svar;

hvis (a == b) {

 hvis (a == c) {

 answer = "alle er ens";

 } andet {

 answer = "a og b er ens";

 }

} ellers hvis (a == c) {

answer = "a og c er ens";
} andet hvis (b == c) {
answer = "b og c er ens";
} andet {

 answer = "alle er forskellige";

}

indlejret hvis så udsagn er almindelige i alle programmeringssprog, ikke kun JavaScript. Begyndere programmerere bruger ofte flere hvis så eller hvis ellers udsagn i stedet for at indlejre dem. Selvom denne type kode fungerer, bliver den hurtigt ordret og duplikerer betingelserne. Indlejring af betingede udsagn skaber mere klarhed omkring programmets logik og resulterer i en kortfattet kode, der muligvis kører eller udarbejde hurtigere.

instagram story viewer