Lizdai jei / dar teiginiai padeda organizuoti ir atskirti sąlygas, kad būtų išvengta to paties bandymo du kartus arba kad būtų kuo mažiau kartų atlikti įvairius bandymus.
Naudojant jei teiginius tiek su palyginimais, tiek su loginiais operatoriais, galime nustatyti kodą, kuris bus paleistas, jei bus įvykdyta tam tikra sąlygų kombinacija. Mes ne visada norime išbandyti visą sąlygą norėdami paleisti vieną teiginių rinkinį, jei visas testas yra teisingas, o kitą, jei jis klaidingas. Galbūt norėsime pasirinkti iš kelių skirtingų teiginių, atsižvelgiant į tai, kuris konkretus jų derinys sąlygos tiesa.
Tarkime, kad turime tris palyginamus dydžius ir norime nustatyti skirtingus rezultatus, atsižvelgiant į tai, kuri iš verčių yra lygi. Šis pavyzdys parodo, kaip mes galime lizdus jei pareiškimai tai išbandyti (paryškinti žemiau)
var atsakymas;
if (a == b) {
if (a == c) {
atsakymas = "visi lygūs";
} Kitas {
atsakymas = "a ir b yra lygūs";
}
} Kitas {
if (a == c) {
atsakymas = "a ir c yra lygūs";
} Kitas {
if (b == c) {
atsakymas = "b ir c yra lygūs";
} Kitas {
atsakymas = "visi yra skirtingi";
}
}
}
Čia veikia logika:
- Jei pirmoji sąlyga yra tiesa (
jei (a == b)
), tada programa patikrina, ar įdėtas, jei sąlyga (jei (a == c)
). Jei pirmoji sąlyga klaidinga, programa grįžta į Kitas sąlyga. - Jei įdėtas, jei tiesa, teiginys vykdomas, t.y. “visi lygūs”.
- Jei įdėtas, jei yra klaidinga, tada Kitas pareiškimas vykdomas, t.y., „a ir b yra lygūs“.
Keletas dalykų, kuriuos reikia pastebėti, kaip tai koduojama:
- Pirmiausia sukūrėme kintamąjį atsakymas išlaikyti rezultatą prieš pradedant jei teiginys, padarant kintamąjį globalus. Be to, mes būtume turėję įtraukti kintamąjį visų priskyrimo teiginių priekyje, nes tai būtų vietinis kintamasis.
- Antra, mes įterpėme kiekvieną lizdą jei pareiškimas. Tai leidžia mums lengviau sekti, kiek yra įvestų teiginių lygių. Tai taip pat leidžia suprasti, kad uždarėme reikiamą skaičių kodo blokų, kad galėtume užpildyti visus jei pareiškimus, kuriuos atidarėme. Galbūt pastebėsite, kad lengviau kiekvienai iš jų padėti petnešas jei prieš pradėdami rašyti kodą, kuris priklauso blokui.
Mes galime šiek tiek supaprastinti vieną šio kodo skyrių, kad nereikėtų įklijuoti jei teiginiai tiek pat. Kur visas dar blokuoti yra sudarytas iš vieno jei teiginį, mes galime praleisti petnešas aplink tą bloką ir perkelti jei sąlyga yra tokia pati kaip Kitas, naudojant sąlygą „kitaip jei“. Pavyzdžiui:
var atsakymas;
if (a == b) {
if (a == c) {
atsakymas = "visi lygūs";
} Kitas {
atsakymas = "a ir b yra lygūs";
}
} kitu atveju, jei (a == c) {
atsakymas = "a ir c yra lygūs";
} dar jei (b == c) {
atsakymas = "b ir c yra lygūs";
} Kitas {
atsakymas = "visi yra skirtingi";
}
Lizdai jei tada teiginiai yra paplitę visose programavimo kalbose, ne tik „JavaScript“. Naujokai programuotojai dažnai naudoja kelis jei tada arba jei / dar pareiškimus, o ne juos įstatyti. Nors šis kodas veiks, jis greitai taps aiškus ir dubliuos sąlygas. Sąlyginių teiginių įterpimas sukuria daugiau aiškumo programos logikoje ir sukuria glaustą kodą, kuris gali būti paleistas arba sudaryti greičiau.