Больше вариантов: else if
С if и else программа выбирает из двух вариантов. Часто их больше. Футбольный матч, например, заканчивается одним из трёх способов: выигрывают хозяева, выигрывают гости или объявляется ничья. Для большего числа вариантов добавьте ветки else if, у каждой из которых своё условие:
const homeGoals = 3;
const awayGoals = 2;
if (homeGoals > awayGoals) {
console.log("Хозяева победили!");
} else if (homeGoals < awayGoals) {
console.log("Гости победили!");
} else {
console.log("Ничья!");
}Это выведет:
Хозяева победили!Программа проверяет условия сверху вниз и выполняет блок первого истинного. Остальную часть цепочки она пропускает, даже если некоторые из следующих условий тоже истинны. Только если ни одно условие не истинно, выполняется блок else. Веток else if можно добавить сколько нужно. else в конце необязателен: без него при отсутствии истинных условий не выполнится ничего.
Поскольку побеждает первое истинное условие, порядок условий важен:
const points = 95;
if (points >= 50) {
console.log("Зачёт");
} else if (points >= 90) {
console.log("Отлично");
}Это выведет:
Зачёт95 баллов — отличный результат, но первое условие, points >= 50, уже истинно, поэтому до второго программа не доходит. Поставьте сначала более строгое условие: points >= 90, а затем points >= 50.
Задание
- 1
15 °C — не погода для зимнего пальто. Между блоком
ifиelseдобавьте веткуelse ifс условиемtemperature > 10, которая выводитНаденьте куртку. - 2
Добавьте ещё одну ветку
else ifс условиемtemperature > 18, которая выводитНаденьте свитер, и изменитеtemperatureна20. Программа должна вывестиНаденьте свитер. Если она выводитНаденьте куртку, условиеtemperature > 10стоит первым и перехватывает и 20 градусов: переместите новую ветку выше него.