Skilyrðissetningar

Einfaldasta gerð skilyrðis er if-setning:
if (notandi == null) notandi = "gestur";
Ef segðin í sviganum er sönn er setningin sem fylgir henni framkvæmd, en annars sleppt. Önnur útgáfa með tveimur möguleikum á aðgerð er if-else setning:
if (i > 0) {endurkoma(--i);}
else {return 1;}
Þetta mætti líka skrifa án slaufusviga og semikomma, en ég held mig við sama rithátt.

Þegar um marga möguleika er að ræða geta if-else setningarnar hangið hver aftan í annarri og myndað röð af valkostum. Dæmi:

if (i>0) {texti = "Talan er pósitíf";}
else if (i<0) {texti = "Talan er negatíf";}
else {texti = "Talan er núll";}

Ef þessar halarófur verða langar er hægt að nota switch setningu í staðinn og þá er samanburðurinn (sem er tímafrekur) ekki gerður nema einu sinni. Einfalt dæmi:

switch (n){
case 0:
texti = "Talan er núll";
break;
case 1:
texti = "Talan er einn";
break;
default:
texti = "Talan er hvorki núll né einn";
break;
}

Notagildi switch er þó meira en hér sýnist, því hægt er að nota fleira en heiltölur til að ákvarða hvaða aðgerðir eru framkvæmdar. Eitt dæmi er val á milli aðgerða eftir tagi breytu:

function convert(x){
switch (typeof x){
case 'number':
return x.toString(16); // skilar hexadecimal gildi
break;
case 'boolean':
return x.toString().toUpperCase();
break;
default:
return x.toString;
break;
}
}