Умова — це перевірка чогось. Умови дуже важливі у програмуванні з кількох причин.
По-перше, всі умови можуть бути використані для того, щоб ваша програма працювала, незалежно від того, які дані ви обробляєте. Якщо ви сліпо довіряєте даним, то можете потрапити в біду і ваші програми перестануть працювати. Якщо ви робите перевірку на те, чи можливо зробити необхідне, перевірку, що вся необхідна інформація зберігається в правильному форматі — то що б не трапилося, ваша програма буде набагато стійкішою. Такі запобіжні заходи також відомі як безпечне програмування.
По-друге, умови дозволяють вам робити розгалуження. Ви, можливо, вже стикалися з діаграмами розгалуження, наприклад, заповнюючи форми. В основному, це відноситься до виконання різних «гілок» (частин) коду, залежно від того, виконується умова чи ні. — if(умова){ виконати… }. Для істинної умови буде виконано код усередині фігурних дужок. Ви можете, наприклад, перевірити рядок та встановити значення іншого рядка залежно від його значення:
<code data-language="javascript">var country='Франція'; var weather; var food; var currency; if(country==='Англія') { weather='жахлива'; food='ситна'; currency='фунти стерлінгів'; } if(country==='Франція') { weather='хороша'; food='приголомшлива, але не завжди вегетаріанська'; currency='маленька, смішна та кольорова'; } if(country==='Німеччина') { weather='середня'; food='кращі ковбаски'; currency='маленька, смішна та кольорова'; } var message='це ' + country + ', погода ' + weather + ', їжа ' + food + ' і ' + 'валюта ' + currency;
Умови можуть вкладатися одна в одну.
Else
Існує також оператор else, який буде застосовуватись, якщо перша умова не є істиною. Це дуже потужна штука, коли вам потрібно реагувати на будь-яке значення, але одне з них вимагає спеціальної обробки:
<code data-language="javascript">var umbrellaMandatory; if(country==='Англія'){ umbrellaMandatory=true; } else { umbrellaMandatory=false; }
Оператор else можна ще з'єднувати з іншим if. Давайте переробимо попередній приклад:
<code data-language="javascript">if(country==='Англія') { ... } else if(country==='Франція') { . .. } else if(country==='Німеччина') { ... }
Порівняння
Давайте зосередимося на наступній умові:
<code data-language="javascript">if(country==='Франція') { ... }
Умова складається зі змінної country , за якою йдуть три знаки рівності (===). Цей оператор перевіряє, що в змінній country зберігається правильне значення (Франція), а також правильний тип (рядок). Ви також можете перевірити умови з двома знаками рівності, однак така умова як if(x==5) однаково поверне true для var x=5 та для var x="5". Залежно від того, що ваша програма робить, це може бути важливою різницею. Настійно рекомендуємо як хорошу практику завжди порівнювати з трьома знаками (===і !==) замість двох (==і !=).
Інші умови для перевірки:
- x > a: x більше a?
- x < a: x менше a?
- x <=a: x менше або дорівнює a?
- x >=a: x більше або дорівнює a?
- x !=a : x не дорівнює a?
- x: x існує?
Об'єднання умов
Крім усього ви можете об'єднати різні умови з виразами «або» або «і», щоб відповідно перевірити, чи є якесь твердження істинним чи обидва вони є істинними.
У JavaScript «або» пишеться як ||, а «і» пишеться як &&.
Скажімо, ви хочете перевірити, якщо значення х знаходиться в діапазоні від 10 до 20. Ви можете зробити це з такою умовою:
><code data-language="javascript">if(x > 10 && x < 20) { ... }
Якщо ви хочете переконатися, що country це або "Англія" або "Німеччина", то використовуйте:
<code data-language="javascript">if(country==='Англія' || country==='Німеччина') { ... }
Подібно до операцій з числами, умови можна групувати за допомогою дужок. Наприклад: if ( (name==="John" || name==="Jennifer") && country==="France").