Sąlyginis sakinys leidžia paleisti kodo bloką pagal konkrečią sąlygą.
„JavaScript“ kalba pateikia įvairius sąlyginių teiginių naudojimo būdus. Daugelis jų būdingi ir kitoms programavimo kalboms. Tačiau turėtumėte žinoti apie jų individualius privalumus ir tai, kaip jie veikia „JavaScript“.
1. if-else ir else-if Teiginiai
An jei-kitaip Teiginys vykdo vieną bloką, jei jo sąlyga yra teisinga, o kitą bloką, jei jis klaidingas. Elder-if vykdo bloką, kuris atitinka vieną iš kelių sąlygų, arba numatytąjį bloką, jei neatitinka nė vienos sąlygos.
Tikra vertė yra vertė, kurią „JavaScript“ laiko tiesa kai su ja susiduria loginis kontekstas. Klaidinga vertė yra vertė, kurią „JavaScript“ laiko klaidinga kai jis susiduria su loginiu kontekstu.
„JavaScript“ laiko visas vertes tikromis, nebent jos yra vienos iš nedaugelio klaidingų. Klaidingos vertybės yra klaidinga, 0, -0, 0n, "", nulinis, neapibrėžtas, ir NaN.
Štai an sintaksė jei-kitaip pareiškimas:
if (sąlyga) {
// Jei sąlyga yra tikroji reikšmė, šis kodo blokas bus paleistas
} Kitas {
// Jei sąlyga yra klaidinga reikšmė, šis kodo blokas bus paleistas
}
Kai kuriais atvejais galbūt norėsite patikrinti keletą susijusių sąlygų. Tokiais atvejais galite naudoti kitaip-jei įvertinti papildomas sąlygas.
Pavyzdžiui:
if (sąlyga) {
// Jei sąlyga teisinga, šis kodo blokas bus paleistas ir kodas bus vykdomas
// sustos.
} Kitasjeigu (sąlyga_2) {
// Jei pirmoji sąlyga klaidinga, šis kodo blokas bus paleistas, jei sąlyga_2
// yra tiesa
} Kitasjeigu (sąlyga_n) {
// Jei abi ankstesnės sąlygos yra klaidingos, šis kodo blokas bus paleistas, jei
// sąlyga_n yra teisinga
} Kitas {
// Jei visos sąlygos klaidingos, šis kodo blokas bus paleistas
}
Naudojant kitaip-jei teiginius, galite įvertinti tiek sąlygų, kiek norite. Tačiau šis metodas greitai tampa neišvaizdus ir sunkiai prižiūrimas, nes daugėja sąlygų.
„JavaScript“ suteikia aiškesnį būdą įvertinti kelias sąlygas, vadinamas jungiklis pareiškimas.
2. Perjungimo pareiškimas
The jungiklis teiginys įvertina išraišką vieną kartą ir bando suderinti ją su viena ar daugiau galimų reikšmių. Galite pateikti kiekvieną potencialiai atitinkančią vertę po a atveju raktažodį.
Kai jungiklio sakinys randa atitiktį, jis paleidžia visus po jo esančius teiginius, kol susidurs su a pertrauka pareiškimas.
Štai jungiklio teiginio sintaksė:
jungiklis (išraiška) {
atveju 'Pirmas-atveju':
// vykdo kodą, jei išraiška atitinka šį atvejį
pertrauka;atveju 'atvejis_2':
// vykdo kodą, jei išraiška atitinka šį atvejį
pertrauka;
numatytas:
// vykdo kodą, jei išraiška nesutampa bet kokiu atveju
}
The pertrauka pareiškimai yra esminė dalis jungiklis blokas, nes jie nurodo, kur kodas turi nustoti vykdyti. Jei praleidote pertraukos teiginį, kodo vykdymas bus tęsiamas ir visi kiti kodo blokai bus vykdomi po pirmosios atitikties. Tai retai būna tai, ko norėtumėte.
3. Trijų šalių operatorius
„JavaScript“ taip pat leidžia sutrumpinti sąlyginius sakinius, naudojant trijų dalių operatorių.
Trečias operatorius paima tris operandus:
- Sąlyga, po kurios yra klaustukas (?).
- Išraiška po klaustuko ir prieš dvitaškį (:). Tai bus vykdoma, jei sąlyga bus teisinga.
- Išraiška po dvitaškio, kuri bus vykdoma, jei sąlyga klaidinga.
Pavyzdžiui:
būklė? console.log('Būklė tikra'): console.log('Būklė netikra');
Aukščiau pateiktas teiginys iš tikrųjų reiškia: „Jei „sąlyga“ yra teisinga, užregistruokite pirmąjį pranešimą, kitu atveju užrašykite antrą pranešimą.
4. Trumpasis jungimas
Trumpasis jungimas yra technika, kuri apima naudojimą loginiai operatoriaiARBA (||) ir IR (&&), kad įvertintumėte išraišką iš kairės į dešinę.
Operacija, kurioje dalyvauja operatorius ARBA, įvyks trumpuoju jungimu, grąžindama pirmąją tikrąją reikšmę. Jei visos išraiškos reikšmės yra klaidingos, ji trumpai jungiasi ir grąžina paskutinę klaidingą reikšmę.
Operacija, naudojanti operatorių IR, sukels trumpąjį jungimą, grąžindama pirmąjį klaidingą teiginį. Jei visi išraiškos teiginiai yra teisingi, jis trumpai sujungiamas ir grąžina paskutinę teisingumo reikšmę.
Štai pavyzdys, kaip parašyti sąlyginį teiginį naudojant OR operatorių.
app.listen (process.env. UOSTAS || 3000)
Šis trumpojo jungimo būdas rašant sąlyginius teiginius yra populiarus „Express“ programose. Jame rašoma: „Jei UOSTAS aplinkos kintamasis egzistuoja, naudokite jį; kitu atveju naudokite prievadą 3000".
Štai pavyzdys, kaip parašyti sąlyginį teiginį naudojant operatorių AND.
foo && console.log('apibrėžiamas foo')
Aukščiau pateiktas kodo blokas reiškia „jei foo yra apibrėžtas, iškvieskite funkciją console.log()“.
Ši technika yra trumpiausias būdas parašyti sąlygą, tačiau dėl jos kodą gali būti sunkiau skaityti. Turėtumėte vengti per daug jo naudoti, ypač kai dirbate kaip didesnės komandos dalis.
Sąlyginių teiginių svarba
Sąlyginiai teiginiai yra tai, kas leidžia jūsų programai priimti sprendimus. Be jų jūsų kodas bus vykdomas tiesiu keliu nuo pradžios iki pabaigos. Jie taip pat yra kilpų dalis. Be jų kilpos veiktų be galo, todėl jūsų programa sugenda.