Javascript, feltételes
Feltételes utasítások lehetővé teszik hagyja, vagy végre más állítás értékétől függően a megadott kifejezés. Az említett szereplők döntési pont a programban, és néha nevezik üzemeltetői „elágazó”.
if / else utasítással
Ebben a formában az első kifejezés értékeljük. Ha az eredmény igaz, az utasítás végrehajtása. Ha a kifejezés hamis értékkel tér vissza, akkor az utasítás nem kerül végrehajtásra. Például:
Megjegyezzük, hogy a zárójelek a feltételes kifejezések kötelező része az if szintaxis.
A második forma az if bemutatja a más konstrukcióban végrehajtott olyan esetekben, amikor a kifejezés értéke false. A szintaxis a következő:
Ez a forma végrehajtja az utasítás1 ha a kifejezés igaz értéket ad vissza, és utasítás2 ha a kifejezés értéke false. Például:
Else if
Ebben a folyosón semmi különös. Ez egyszerűen egy sorozata állítások közül, ahol minden operátor, ha egy része a tervezés az előző üzemeltető mást.
switch utasítást
ha üzemeltető létrehoz elágazás az áramlás a program, és a Multi-elágazás valósítható több üzemeltető else if. Ez azonban nem mindig a legjobb megoldás, különösen, ha az ágak értékétől függ az azonos kifejezést. Ebben az esetben a pazarló újra értékének kiszámításához ugyanazt a kifejezést több utasításból.
A switch utasítás célja pontosan az ilyen helyzetekre. A kulcsszó kapcsoló, majd egy kifejezést zárójelben, és egy blokk-kód zárójelek:
Azonban a teljes szintaxis a kapcsoló sokkal összetettebb, mint az itt látható. Különböző helyeken a blokk jelölt esetben, ha a kulcs szó. majd egy expressziós és vastagbél.
Ha az üzemben kapcsoló, kiszámítja az a kifejezés értékét, majd megkeresi az esetben mark ennek az értéknek megfelelő (line algoritmussal határozzuk meg az üzemeltető ===). Ha ezt a címkét találtam, a kódblokkot, kezdve az első utasítás követő címke esetében. Ha az ügy címkét a megfelelő érték nem található, végrehajtás kezdődik az első nyilatkozatot követően egy speciális címkét alapértelmezett:. Ha a címke alapértelmezett: nincs, switch utasítás blokk kimarad teljesen.
switch utasítás munka nehéz szavakkal elmagyarázni, úgy néz ki, sokkal világosabb magyarázatot a példát. A következő switch egyenértékű ismétlődő szereplő if / else, azt az előző példában:
Megjegyzés: a szünet címszó végén minden esetben egységet. A break utasítás okok ellenőrzésére, hogy adja át a végén a switch és a végrehajtást az üzemeltetők, a következőket. Tervezés esetben egy switch utasítást adja csak a kiindulási pont a végrehajtható kódot, de nem ad meg a végpontot.
Ennek hiányában szereplők törés kapcsoló működtető elkezdi végrehajtani kódblokkot egy tag az esetben a megfelelő kifejezés értékét, és a piaci szereplők számára végrehajtását mindaddig, amíg el nem éri a blokk végén. Ritka esetekben, hasznos írni a kódot, amely átmegy az egyik címkét a következő eset, de 99% -ában, akkor alaposan meg kell befejezni minden egység esetében break utasítás operátor. (Ha a kapcsolót a funkció használható helyett szünetet üzemeltető visszatérés. Mindkét operátor szolgálja, hogy teljes a kapcsolót üzemeltető és megakadályozza az átmenetet a következő címke esetében.)
Az alábbiakban egy gyakorlati példát a kapcsoló üzemben, hogy átalakítja az értéket a folyamat sor, függetlenül az érték típusát:
Megjegyezzük, hogy az előző két példa arra az esetre, kulcsszó, majd számokkal vagy string literálok. Így a switch a leggyakrabban használt a gyakorlatban, de a ECMAScript szabvány lehetővé teszi, hogy meghatározza tetszőleges kifejezések után a helyzet.
A switch utasítás először kiértékeli a kifejezést a kulcsszó után kapcsolót, majd egy esetben nyilatkozatot abban a sorrendben, ahogy fel vannak sorolva, amíg meg nem találja megfelelő értéket. A véletlen meghatározása az identitás operátor === használata helyett az egyenlőség operátor == így a kifejezés meg kell egyeznie nélkül bármilyen átalakítás.
Mivel minden egyes alkalommal a switch nem számítja az összes kifejezést egy eset, akkor ne használja a kifejezést esetben, a mellékhatások, mint például a függvény hívások és feladatok. Ez a legbiztonságosabb korlátozni abban az esetben kifejezést konstans kifejezések.
Mint azt korábban kifejtettük, ha egyik eset kifejezések nem felelnek meg a kifejezés a kapcsoló kapcsolja nyilatkozat elkezdi végrehajtani szereplő Tagged alapértelmezett. Ha a címke alapértelmezett: nincs, kapcsolja a kezelő teste teljesen kimarad. Megjegyezzük, hogy az előző példákban a címke alapértelmezett: felsorolt végén a switch test után az összes címke esetében. Ez logikus és a szokásos helyen, de valójában ez lehet bárhol belül a switch.
Háromkomponensű üzemeltetője.
Operandusok a feltételes operátor lehet bármilyen típusú. Az első operandus kerül kiszámításra, és ezt használjuk egy logikai érték. Ha az első operandus igaz, a számított érték a kifejezés, és visszatér a második operandus. Ha az első operandus hamis értéket, és visszaadja a számított érték a kifejezés a harmadik operandus. Mindig számított csak néhány az egyik operandus, második vagy harmadik, és nem lehet a kettőt.
Ugyanez az eredmény érhető el, ha egy állítás, de az üzemeltető. Gyakran célszerű rövidítése. Az alábbiakban egy tipikus példa, amelyben azt vizsgálja, hogy a változó (és a valódi érték) meghatározása, és ha igen, milyen érték kerül sor, és ha nem, akkor az alapértelmezett érték:
Ez az ellenőrzés egyenértékű a következő szerkezetet, ha, de tömörebb: