CatNet Space Team Docs

Документация от команды

Инструменты пользователя

Инструменты сайта


Часто в программировании встречаются случаи, когда нужно выполнить действие по какому-то условию. Тут на помощь приходят операторы if и switch.

Немного про условия

Используются не только в ветвлениях, но и в циклах, а также можно записать в переменную.

Типы условий

Их всего два:

  • Ложными считаются те, что имеют значения:
    • false,
    • Число 0,
    • Пустая строка "",
    • null,
    • NaN,
    • undefined;
  • Правдивые (истинные) - значения этих условий после вычисления равны:
    • true,
    • число, не равное нулю,
    • не пустая строка и др.

Сравнение значений

Очень хорошо, что в JavaScript можно сравнивать значение переменных (или просто каких-то значений, что бессмысленно), ведь это очень часто пригождается на практике. Тут знаки такие же, как и в математике (не считая некоторых):

  • < - меньше;
  • > - больше;
  • <= - меньше или равно;
  • >= - больше или равно;
  • == - простое сравнение. Сравнивает значения. Такие выражения, как 1 == «1» будут «правдивыми», так как тут происходит преобразование типов. Следует быть внимательным к таким моментам, бывает сложно найти ошибку в коде при таком сравнении;
  • === - строгое сравнение. Сравнивается как значение, так и тип. То есть null не будет равен undefined (разный тип данных), 0 не будет равен false и так далее.

Логические операторы для условий

  • ! - логическое НЕ, которая инвертирует (меняет на противоположное) значение.
console.log(!false);  // Выведет true
  • || - логическое ИЛИ, которое выведет истину, если хотя бы одно из значений правдивое.
console.log(false || false);  // Будет ложным, оба значения false
console.log(false || true);   // Будет истина, есть одно true
console.log(true || false);   // Будет истина, есть одно true
console.log(true || true);    // Будет истина
  • && - логическое И, выведет истину в случае, если оба значения истинные:
console.log(false && false);  // Будет ложным, оба значения false
console.log(false && true);   // Будет ложным, есть одно false
console.log(true && false);   // Будет ложным, есть одно false
console.log(true && true);    // Будет истина

Операторы if и else

Вычисляет условие внутри круглых скобок и, если значение условия является «правдивым», выполняет действия внутри блока (фигурных скобок):

if (условие) // Какое-то однострочное действие
 
// или
 
if (условие) {
    // Какие-то действия, которые выполнятся, если условие окажется правдивым
}
Использование фигурных скобок не обязательно, но желательно. Повышает читаемость кода и вашу самооценку :-)

Бывают случаи, когда условие принимет и «ложные» значения, и нужно выполнить действие:

if (условие) {
    // Тут код выполнится, если условие "правдивое"
} else {
    // А здесь код выполнится, если условие оказалось "ложным"
}

Также можно добавить еще и промежуточные условия, которые будут выполнятся, если предыдущее оказалось «ложным»:

if (условие1) {
    // Тут код выполнится, если условие1 "истинное"
    } else if (условие2) {
    // Вот тут код выполнится, если условие1 - "ложное", а условие2 - "правдивое"
} else {
    // Ну а тут, если все условия выше "ложные"
}

Оператор switch

Очень похож на if, принимает переменную и сравнивает её значение со значением после оператора case. Если ни одно из значений после case не равно значению переменной, то выполнится действие после оператора default.

Внимание: что если не поставить break, то выполнятся все действия ниже, до следующего break в блоке или до конца блока switch
switch переменная {
    case значение1:
        ...                                                                                                                   
        break;
    case значение2:
        ...
        break;
    default:
        ...
        break;
}
programming/langs/javascript/statements/branching.txt · Последнее изменение: 2024-09-23 19:34 — Иван Солнцев

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: GNU Free Documentation License 1.3
GNU Free Documentation License 1.3 Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki