Количество просмотров: 1196
Это последняя тема, посвящённая условным операторам If Else в JavaScript. Здесь мы рассмотрим несколько моментов, которые нужно знать и понимать, так как они довольно часто встречаются на практике.
Итак, здесь Вы узнаете о некоторых тонкостях и нюансах при работе с условными операторами If Else в JavaScript. И давайте сразу обратимся к примерам.
Любое число - это Истина, 0 - это Ложь
Допустим, у нас есть вот такое не привычное условие. Смотрите пример ниже...
<script type="text/javascript">
var number = 10;
if(number)
{
document.write("Любое число - это Истина");
}
else /* Иначе... */
{
document.write("Ноль - это Ложь");
}
</script>
В результате JavaScript выдаёт нам «Любое число - это Истина» - действие, следующее после оператора if, то есть Истину.
Разберём этот пример. Но для начала вспомним, о чём мы говорили в самой первой теме, касающейся условий If Else. Так вот напомним, что каковым бы ни было условие, для JavaScript имеет значение лишь одно Истинно оно или Ложно. И в языке JavaScript есть некоторые правила, согласно которым для условий определяется Истина или Ложь. Ситуация, рассмотренная в примере выше, описывается одним из таких правил.
Итак, правило первое.
Если мы передаём в условие JavaScript любое число (это может быть 200, -5 или 15), кроме 0, то JavaScript воспринимает это число как Истину. Поэтому в результате исполнения кода в примере выше мы увидели «Любое число - это Истина», так как, обозначив в условии переменную number, мы тем самым передали её значение - число 10.
То же самое мы могли бы записать так:
<script type="text/javascript">
var number = 10;
if(number == 10)
{
document.write("Любое число - это Истина");
}
else /* Иначе... */
{
document.write("Ноль - это Ложь");
}
</script>
Как видите, мы получили тот же результат - «Любое число - это Истина».
Если же переменной number присвоить значение 0, то JavaScript воспримет это как Ложь, поэтому в результате мы увидим:
<script type="text/javascript">
var number = 0;
if(number)
{
document.write("Любое число - это Истина");
}
else /* Иначе... */
{
document.write("Ноль - это Ложь");
}
</script>
Так, с числами всё понятно: 0 - это Ложь, любое другое число (как положительное, так и отрицательное) - это Истина. Далее поговорим о строках...
Любая строка - это Истина, Пустая строка - это Ложь
Рассмотрим пример со сроковым значением переменной.
<script type="text/javascript">
var string = "Солнце";
if(string)
{
document.write("Солнце - это Истина");
}
else /* Иначе... */
{
document.write("Пустота - это Ложь");
}
</script>
В этом примере JavaScript выдаёт нам Истину. И отсюда вытекает второе правило, согласно которому:
Если мы передаём в условие JavaScript любою строку (в том числе пробел - обратите на этот нюанс внимание), то JavaScript воспринимает её как Истину.
Если же мы передаём пустую строку, то JavaScript воспринимает её как Ложь. Смотрим следующий пример...
<script type="text/javascript">
var string = "";
if(string)
{
document.write("Солнце - это Истина");
}
else /* Иначе... */
{
document.write("Пустота - это Ложь");
}
</script>
Как Вы сами можете убедиться: пустая строка - это Ложь.
Булевы значения true - это Истина, false - это Ложь
На данный момент мы рассмотрели некоторые тонкости при работе с условиями в JavaScript. При этом в качестве данных выступали числа и строки. Строки мы заключаем в кавычки ".......", числа же передаём в «чистом» виде.
Но существует и третий, до сих пор не используемый нами, тип данных. Речь идёт о так называемых «булевых значениях» Истины и Лжи. Это true и false - Истина и Ложь соответственно.
Давайте на примере попробуем присвоить булевы значения true и false какой-либо переменной и передать их в условие.
<script type="text/javascript">
var bulevo = true;
if(bulevo)
{
document.write("true - это Истина");
}
else /* Иначе... */
{
document.write("false - это Ложь");
}
</script>
Итак, если мы передаём в условие true, то для JavaScript это Истина.
Если же переменной присвоить булево значение false, то это будет Ложь. Смотрите следующий пример.
<script type="text/javascript">
var bulevo = false;
if(bulevo)
{
document.write("true - это Истина");
}
else /* Иначе... */
{
document.write("false - это Ложь");
}
</script>
Итак, только что мы работали с булевым (ещё можно перевести как логическим) типом данных, который состоит из двух элементов true и false. Они довольно часто используются в JavaScript, поэтому запомните, что true это Истина, а false - это Ложь. И пишутся они без кавычек!
Например, булевы истина и ложь могут встречаться в уже известных Вам Массивах.
<script type="text/javascript">
var bulevo = ["Истина", 45, false, "Солнце"];
</script>
И на этом мы заканчиваем изучение темы условных операторов If Else в JavaScript.
|