Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Операторы if...else (https://javascript.ru/forum/misc/7870-operatory-if-else.html)

nematod 23.02.2010 13:14

Операторы if...else
 
Есть простенький код:
if(sday == 0){alert("You entered an invalid value in the birthday!")}
if(smonth == 0){alert("You entered an invalid value in the birth month!")}
if(syear == 0){alert("You entered an invalid value in the birth year!")}


Почему если первое условие не выполняется, остальные Ифы игнорируются?

vk65535 23.02.2010 13:34

(function() {
var sday = 0, smonth = 0, syear = 0;
if(sday == 0){alert("You entered an invalid value in the birthday!")}
if(smonth == 0){alert("You entered an invalid value in the birth month!")}
if(syear == 0){alert("You entered an invalid value in the birth year!")}
})()

nematod 23.02.2010 13:58

Спасибо большое за ответ.
Я понял где я допустил ошибку.
Однако сделать пришлось немного по-другому.
Дело в том, что эти переменные назначаются в предидущих функциях, которые могит и не выполняться, поэтому переменные могут вообще отсутствовать.
Код получился такой:
function Sub(){
if(window.sday == 0){alert("You entered an invalid value in the birthday!!");}
if(window.smonth == 0){alert("You entered an invalid value in the birth month!");}
if(window.syear == 0){alert("You entered an invalid value in the birth year!");}
}

vk65535 23.02.2010 14:03

Можно проще:
if (!sday) ...
if (!smonth) ...
if (!syear) ...

nematod 23.02.2010 14:10

Согласен.

Вообще форум это сила:) У меня чуть мозг не вскипел пока на форум не зашел:)


Часовой пояс GMT +3, время: 00:02.