ява скрипт if else
Примеры If-Else в JavaScript
Примеры условных операторов if-else (если-иначе), нам не надо специально придумывать, они приходят из жизни. То, как мы себя ведем или какой делаем выбор, зависит от определенных условий. В программах происходит, тоже самое, ведь написаны они для людей.
Условный оператор If в JavaScript
При использовании только одного условного оператора if, нет другой альтернативы. Действие происходит или не происходит.Если условие верно, как в примере ниже, то выводится в документе запись.
// объявляем переменную prava и присваиваем ей значение «получу»
var prava = «получу»;
//если между prava и «получу» стоит знак равенства, то это истина
if(prava == «получу»)
//тогда выводится на экране
<
document.write(«Мы поедем в гости на машине»);
>
Если условие ложно, тогда ничего не выводится.
var prava = «получу»;
// prava не равняются «получу»
if(prava == «не получу»)
<
document.write(«Мы поедем в гости на машине»);
>
На экран ничего не вывелось, поскольку права не получены, про машину можно забыть. Альтернатива идти пешком, не предлагалась.
Условный оператор If-Else в JavaScript
В конструкции if-else, всегда есть альтернатива. Действие в любом случае происходит. Если мы не поедем в гости на машине, то пойдем в гости пешком.
var prava = «получу»;
// если это истина
if(prava == «получу»)
<
document.write(«Мы поедем в гости на машине»);
>
// в противном случае ложь
else
<
document.write( «то пойдем в гости пешком»);
>
В документе вывелось альтернативное действие.
Пример If-Else в JavaScript
Мы запрограммировали число – 10 и хотим, чтобы пользователь угадал его. Пользователь в поле ввода вводит любое число, после нажатия кнопки, программа должна ответить, введенное число больше, меньше или равно. У нас предполагается три возможных варианта ответов, значит конструкция if-else будет состоять из трех частей.
Для решения этой задачи, создадим input (поле ввода) с идентификатором num, button (кнопку), при нажатии на которую, будет выводиться ответ между тегами span с идентификатором result. На кнопку повесим событие onclick для запуска функции know().
Программирование функции в JavaScript
Объявляем две переменные: число, которое ввел пользователь и результат.
Присвоим переменной n, значение полученное из input и оставим там на хранение.
Надо убедиться, что пользователь ввел именно число, сделаем проверку и если надо, то исправим.
Во вторую переменную s, получим тег span с идентификатором result, через которую будем обращаться к span, где будет выводиться результат.
Первая часть if
Если число, которое ввел пользователь равно 10, тогда внутри span, выведется запись Число равно 10 (число угадано).
if (n==10) <
s.innerHTML = ‘Число равно 10’;
>
Вторая часть else if
Если число n меньше 10, то мы увидим запись:
Последняя часть else
Если не сработали первые два условия, тогда число больше 10.
else <
s.innerHTML = ‘Число больше 10’; >
Весь JS код
Заключение
В самом простом варианте, отрабатывает условие if, если оно верно, в противном случае, ничего не произойдет. Условный оператор if позволяет проверять условие когда, в простом варианте if-else работают в паре. Если условие верно, запускается первая часть if, если условие не верно, тогда отрабатывает часть else. Обязательно одно из этих условий выполнится.
В случае более сложных задачах (наш пример), недостаточно двух веток if-else, нужно больше условий. Тогда вводятся промежуточные ветки else-if для проверки дополнительных условий. Отработает последняя ветка else, если все условия, окажутся неверными.
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
Комментарии ( 0 ):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.
Copyright © 2010-2021 Русаков Михаил Юрьевич. Все права защищены.
Условное ветвление: if, ‘?’
Иногда нам нужно выполнить различные действия в зависимости от условий.
Инструкция «if»
В примере выше, условие – это простая проверка на равенство ( year == 2015 ), но оно может быть и гораздо более сложным.
Если мы хотим выполнить более одной инструкции, то нужно заключить блок кода в фигурные скобки:
Преобразование к логическому типу
Инструкция if (…) вычисляет выражение в скобках и преобразует результат к логическому типу.
Давайте вспомним правила преобразования типов из главы Преобразование типов:
Таким образом, код при таком условии никогда не выполнится:
…а при таком – выполнится всегда:
Блок «else»
Инструкция if может содержать необязательный блок «else» («иначе»). Он выполняется, когда условие ложно.
Несколько условий: «else if»
Блоков else if может быть и больше. Присутствие блока else не является обязательным.
Условный оператор „?“
Иногда нам нужно определить переменную в зависимости от условия.
Так называемый «условный» оператор «вопросительный знак» позволяет нам сделать это более коротким и простым способом.
Этот пример будет делать то же самое, что и предыдущий:
Но скобки делают код более читабельным, поэтому мы рекомендуем их использовать.
Несколько операторов „?“
Поначалу может быть сложно понять, что происходит. Но при ближайшем рассмотрении мы видим, что это обычная последовательная проверка:
Вот как это выглядит при использовании if..else :
Нетрадиционное использование „?“
Здесь мы не присваиваем результат переменной. Вместо этого мы выполняем различный код в зависимости от условия.
Не рекомендуется использовать оператор вопросительного знака таким образом.
Вот, для сравнения, тот же код, использующий if :
При чтении глаза сканируют код по вертикали. Блоки кода, занимающие несколько строк, воспринимаются гораздо легче, чем длинный горизонтальный набор инструкций.
Принятие решений в вашем коде — условные конструкции
Во многих языках программирования код должен иметь возможность принимать решения на основе введённых пользователем данных. Например, в игре, если у пользователя осталось 0 жизней, то игра завершается. В приложении о погоде утром отображается восход солнца, а вечером звезды и луна. В этой статье мы рассмотрим как в JavaScript работают так называемые «условия».
Необходимое условие: | Базовая компьютерная грамотность, базовое понимание HTML и CSS, JavaScript first steps. |
---|---|
Цель: | Понять принципы использования операторов условий в JavaScript. |
Выбор одного условия.
Люди (и животные) принимают какие-либо решения всю жизнь, от малозначимых («стоит ли мне съесть одну печеньку или две?») до жизнеопределяющих («стоит ли мне остаться дома и работать на ферме отца или переехать в другую страну и изучать астрофизику?»)
Операторы условия в JavaScript позволяют нам указать разного рода действия в зависимости от выбранного пользователем или системой ответа (например одна печенька или две) и связать его с действием (результатом), например, результатом «съесть одну печеньку» будет «все ещё буду чувствовать себя голодным», а результатом «съесть две печеньки» будет «буду чувствовать себя сытым, но мама меня поругает за то, что я съел все сладости».
Базовый if. else синтаксис выглядит как pseudocode:
Стоит заметить, что else и второй блок скобок < >не обязателен — следующий код так же будет работать:
Тем не менее, следует быть осторожным — в случае, если код внутри вторых скобок < >не контролируется условием, то этот код будет выполняться всегда. Это не плохо, просто вы должны помнить об этом, чаще вы хотите запустить один кусок кода или другой, но не оба.
И, наконец, иногда вы можете встретить код if. else без фигурных скобок в сокращённой форме:
Это абсолютно рабочий код, но он менее читаем, лучше использовать фигурные скобки, новые строки и отступы.
Реальный пример
Чтобы лучше понять синтаксис, давайте рассмотрим реальный пример. Представьте, что мать или отец попросили помочь с работой по дому своего ребёнка. Родитель может сказать: «Если ты поможешь мне с покупками, то я дам тебе дополнительные деньги на карманные расходы, которые ты сможешь потратить на игрушку, какую захочешь». В JavaScript, мы можем представить это так:
Примечание: вы можете увидеть больше в полной версии этого примера на GitHub (также посмотреть как он работает вживую.)
else if
В предыдущем примере предоставлено два выбора, или результата — но что, если мы хотим больше, чем два?
Примечание об операторах сравнения
Примечание: Просмотрите материал по предыдущей ссылке, если вы хотите освежить свою память.
И, возвращаясь к нашему предыдущему примеру о ребёнке, выполняющем поручение своего родителя, вы можете это записать так:
Вполне нормально использовать один условный оператор if. else внутри другого — вложить их. Например, мы могли бы обновить наше приложение прогноза погоды, чтобы показать ещё один набор вариантов в зависимости от температуры:
Несмотря на то, что весь код работает вместе, каждый условный оператор if. else работает полностью отдельно от другого.
Логические операторы: И, ИЛИ и НЕ
Если вы хотите проверить несколько условий без записи вложенных if. else условий, логические операторы помогут вам. При использовании в условиях, первые два оператора делают следующее:
Чтобы дать вам пример оператора И, предыдущий фрагмент кода можно переписать так:
Давайте посмотрим на быстрый пример оператора ИЛИ:
Можно сочетать любое количество логических операторов, в любой последовательности и в любой комбинации. В следующем примере код в блоке будет выполняться только в том случае, если оба условия с ИЛИ возвращают true, а следовательно, и оператор И возвращает true:
Распространённой ошибкой при использовании логического оператора ИЛИ в условном выражении является указание переменной, значение которой нужно проверить со списком возможных значений этой переменной, разделённых операторами || (ИЛИ). Например.
В данном примере условие в if(. ) всегда будет оцениваться как true, поскольку 7 (или любое другое ненулевое значение) всегда будет оцениваться как true. Фактически, это условие гласит «если х равен 5, или 7 является true». Но нам требуется совсем не это. Чтобы достичь нужной цели, придётся выполнять полноценную проверку после каждого оператора ИЛИ:
Оператор switch
Выражения if. else отлично справляются с добавлением условного кода, однако они не лишены недостатков. Они хорошо подходят для ситуации, когда имеется всего пара вариантов развития событий, каждый из которых имеет блок с приемлемым количеством кода, а также в случаях, когда условие является довольно сложным и включает несколько логических операторов. Если же нам требуется всего лишь задать переменную для определённого выбранного значения или напечатать конкретную фразу при определённом условии, изученный нами синтаксис может оказаться довольно громоздким, особенно если имеется большое количество вариантов выбора.
В этом случае нам поможет оператор switch – он принимает одно единственное выражение или значение, а затем просматривает ряд вариантов, пока не найдут вариант, соответствующий этому значению, после чего выполняет код, назначенный этому варианту. Вот пример использования этого оператора:
Примечание. Вариант выбора default может быть пропущен, если выражение гарантированно совпадёт с одним из вариантов выбора. В противном случае вариант default необходим.
Пример оператора switch
Давайте рассмотрим реальный пример — перепишем наше приложение прогноза погоды с использованием оператора switch:
Руководство по операторам if…else в JavaScript
Как и многие другие языки программирования, JavaScript также позволяет писать код, который выполняет различные действия на основе результатов логических или сравнительных условий. Это означает, что вы можете создавать условия в форме выражений, которые оцениваются как истинные ( true ) или ложные ( false ) и на основании этих результатов вы можете выполнять определенные действия.
В JavaScript есть несколько условных операторов, которые вы можете использовать для условной логики:
Оператор if
В следующем примере будет выводиться «Хороших выходных!» если текущий день пятница:
Оператор if…else
Оператор if … else позволяет вам выполнить один блок кода, если указанное условие выполняется ( true ), и другой блок кода, если условие не выполняется ( false ). Это можно записать так:
Код JavaScript в следующем примере выводит: «Хороших выходных!» если текущий день пятница, в противном случае будет выведен текст «Хорошего дня!».
Оператор if…else if…else
В следующем примере будет выводиться «Хороших выходных!» если текущий день пятница, и «Хорошего воскресенья!» если текущий день воскресенье, в противном случае будет выведено «Хорошего дня!»
Вы узнаете об операторе switch-case JavaScript в следующей главе.
Тернарный оператор
Используя тернарный оператор, тот же код можно написать более компактным способом:
Код, написанный с использованием тернарного оператора иногда бывает трудно прочитать. Тем не менее, он предоставляет отличный способ писать компактные операторы if-else.
Похожие посты
Руководство по сортировке массивов в JavaScript
Руководство по массивам в JavaScript
Руководство по работе с атрибутами DOM в JavaScript
Насколько публикация полезна?
Нажмите на звезду, чтобы оценить!
Средняя оценка 5 / 5. Количество оценок: 1
Оценок пока нет. Поставьте оценку первым.
Разработка сайтов для бизнеса
Если у вас есть вопрос, на который вы не знаете ответ — напишите нам, мы поможем разобраться. Мы всегда рады интересным знакомствам и новым проектам.
В этой статье рассмотрим условные и логические операторы языка JavaScript.
Условные операторы JavaScript
Формы условных операторов в JavaScript:
Условный оператор if
Синтаксис оператора if:
Условный оператор if состоит из:
Если необходимо выполнить несколько инструкций, то их необходимо поместить в фигурные скобки :
Рекомендуется, использовать фигурные скобки даже когда используется одна инструкция:
Оператор if. else
Правило приведения условия к true или false
Смысл данного правила: любое выражение является true, кроме следующих значений :
Оператор else if. (несколько условий)
Условный (тернарный) оператор (?:)
Тернарный оператор – оператор JavaScript, который можно использовать, когда необходимо в зависимости от условия выполнить одно из двух заданных выражений.
Вышеприведённый пример, но с использованием множественной записи оператора if. else :
Оператор switch
Оператор switch предназначен для выполнения одного варианта инструкций из нескольких в зависимости от значения выражения. Выбор того или иного варианта определяется посредством строгого равенства результата выражения значению случая ( case ).
Синтаксис оператора switch :
Ключевое слово default является необязательным. Оно используется, когда необходимо задать инструкции, которые нужно выполнить, если результат выражения будет не равен ни одному значению варианта ( case ).
Инструкция break является необязательной. Она предназначена для прерывания выполнения оператора switch и передачи управлению инструкции, идущей после него.
Пример, в котором не используется инструкция break :
В некоторых случаях может требоваться именно такое поведение, но не в этом. Здесь просто допущена ошибка.
Исправленный вариант примера:
Логические операторы
В JavaScript различают следующие логические операторы: