|
|
<div align="center">
|
|
|
<h1> 30 Days Of JavaScript</h1>
|
|
|
<a class="header-badge" target="_blank" href="https://www.linkedin.com/in/asabeneh/">
|
|
|
<img src="https://img.shields.io/badge/style--5eba00.svg?label=LinkedIn&logo=linkedin&style=social">
|
|
|
</a>
|
|
|
<a class="header-badge" target="_blank" href="https://twitter.com/Asabeneh">
|
|
|
<img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/asabeneh?style=social">
|
|
|
</a>
|
|
|
|
|
|
<sub>Автор:
|
|
|
<a href="https://www.linkedin.com/in/asabeneh/" target="_blank">Asabeneh Yetayeh</a><br>
|
|
|
<small> Январь, 2020</small>
|
|
|
</sub>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
[<< День 3](https://github.com/Asabeneh/30DaysOfJavaScript/blob/master/RU/03_Day/03_booleans_operators_date.md) | [День 5 >>](https://github.com/Asabeneh/30DaysOfJavaScript/blob/master/RU/05_Day/05_day_arrays.md)
|
|
|
|
|
|
![Thirty Days Of JavaScript](../images/banners/day_1_4.png)
|
|
|
|
|
|
- [📔 День 4](#%f0%9f%93%94-%d0%94%d0%b5%d0%bd%d1%8c-4)
|
|
|
- [Условные операторы](#%d0%a3%d1%81%d0%bb%d0%be%d0%b2%d0%bd%d1%8b%d0%b5-%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%82%d0%be%d1%80%d1%8b)
|
|
|
- [if](#if)
|
|
|
- [if else](#if-else)
|
|
|
- [if else if else](#if-else-if-else)
|
|
|
- [Switch](#switch)
|
|
|
- [Тернарный оператор](#%d0%a2%d0%b5%d1%80%d0%bd%d0%b0%d1%80%d0%bd%d1%8b%d0%b9-%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%82%d0%be%d1%80)
|
|
|
- [💻 Упражнения](#%f0%9f%92%bb-%d0%a3%d0%bf%d1%80%d0%b0%d0%b6%d0%bd%d0%b5%d0%bd%d0%b8%d1%8f)
|
|
|
- [Упражнения: уровень 1](#%d0%a3%d0%bf%d1%80%d0%b0%d0%b6%d0%bd%d0%b5%d0%bd%d0%b8%d1%8f-%d1%83%d1%80%d0%be%d0%b2%d0%b5%d0%bd%d1%8c-1)
|
|
|
- [Упражнения: уровень 2](#%d0%a3%d0%bf%d1%80%d0%b0%d0%b6%d0%bd%d0%b5%d0%bd%d0%b8%d1%8f-%d1%83%d1%80%d0%be%d0%b2%d0%b5%d0%bd%d1%8c-2)
|
|
|
- [Упражнения: уровень 3](#%d0%a3%d0%bf%d1%80%d0%b0%d0%b6%d0%bd%d0%b5%d0%bd%d0%b8%d1%8f-%d1%83%d1%80%d0%be%d0%b2%d0%b5%d0%bd%d1%8c-3)
|
|
|
|
|
|
# 📔 День 4
|
|
|
|
|
|
## Условные операторы
|
|
|
|
|
|
Условные операторы используются для принятия решения на основе различных условий.
|
|
|
По умолчанию операторы в скрипте JavaScript выполняются последовательно сверху вниз. Если логика обработки требует этого, последовательный поток выполнения может быть изменен двумя способами:
|
|
|
|
|
|
- Условное выполнение: блок из одного или нескольких операторов будет выполнен, если определенное выражение истинно
|
|
|
- Повторное выполнение: блок из одного или нескольких операторов будет выполняться повторно, если определенное выражение истинно. В этом разделе мы рассмотрим операторы `if`, `else`, `else if`. Здесь будут полезны сравнение и логический оператор, который мы изучили в предыдущих разделах.
|
|
|
|
|
|
Условия могут быть реализованы следующими способами:
|
|
|
|
|
|
- if
|
|
|
- if else
|
|
|
- if else if else
|
|
|
- switch
|
|
|
- ternary operator
|
|
|
|
|
|
### if
|
|
|
|
|
|
В JavaScript и других языках программирования ключевое слово `if` используется, чтобы проверить, выполняется ли условие и выполнить код блока. Чтобы создать условие `if`, нам нужно ключевое слово `if`, условие внутри скобки и блок кода внутри фигурной скобки ({}).
|
|
|
|
|
|
```js
|
|
|
// синтаксис
|
|
|
if (condition) {
|
|
|
//эта часть кода работает для true состояния
|
|
|
}
|
|
|
```
|
|
|
|
|
|
**Пример:**
|
|
|
|
|
|
```js
|
|
|
let num = 3;
|
|
|
if (num > 0) {
|
|
|
console.log(`${num} это положительное число`);
|
|
|
}
|
|
|
// 3 это положительное число
|
|
|
```
|
|
|
|
|
|
```js
|
|
|
let isRaining = true;
|
|
|
if (isRaining) {
|
|
|
console.log("Remember to take your rain coat.");
|
|
|
}
|
|
|
```
|
|
|
|
|
|
Как видно из вышеприведенного условия, 3 больше 0 и является положительным числом. Условие было выполнено, и код блока был выполнен. Однако, если условие ложно, мы не видим результат. То же самое касается второго условия, если isRaining равен `false`, блок `if` не будет выполнен, и мы не увидим вывод. Чтобы увидеть результат ложного условия, у нас должен быть еще один блок, который будет `else`.
|
|
|
|
|
|
### if else
|
|
|
|
|
|
Если условие истинно, первый блок будет выполнен, если нет, будет выполнено условие else.
|
|
|
|
|
|
```js
|
|
|
// синтаксис
|
|
|
if (condition) {
|
|
|
// эта часть кода работает для истинного состояния
|
|
|
} else {
|
|
|
// эта часть кода выполняется для ложного условия
|
|
|
}
|
|
|
```
|
|
|
|
|
|
```js
|
|
|
let num = 3;
|
|
|
if (num > 0) {
|
|
|
console.log(`${num} это положительное число`);
|
|
|
} else {
|
|
|
console.log(`${num} отрицательное число`);
|
|
|
}
|
|
|
// 3 это положительное число
|
|
|
|
|
|
num = -3;
|
|
|
if (num > 0) {
|
|
|
console.log(`${num} это положительное число`);
|
|
|
} else {
|
|
|
console.log(`${num} это отрицательное число`);
|
|
|
}
|
|
|
// -3 это отрицательное число
|
|
|
```
|
|
|
|
|
|
```js
|
|
|
let isRaining = true;
|
|
|
if (isRaining) {
|
|
|
console.log("Тебе нужен плащ от дождя..");
|
|
|
} else {
|
|
|
console.log("Не нужно пальто от дождя.");
|
|
|
}
|
|
|
// Тебе нужен плащ от дождя.
|
|
|
|
|
|
isRaining = false;
|
|
|
if (isRaining) {
|
|
|
console.log("Тебе нужен плащ от дождя..");
|
|
|
} else {
|
|
|
console.log("Не нужно пальто от дождя.");
|
|
|
}
|
|
|
// Не нужно пальто от дождя.
|
|
|
```
|
|
|
|
|
|
Вышеуказанное условие ложно, поэтому был выполнен блок `else`. Как насчет, если наше условие больше двух, мы будем использовать `else if` условия.
|
|
|
|
|
|
### if else if else
|
|
|
|
|
|
В нашей повседневной жизни мы принимаем решения ежедневно. Мы принимаем решение не проверяя одно или два условия, а принимаем решения на основе нескольких условий. Как и в нашей повседневной жизни, программирование также полно условий. Мы используем `else if`, когда у нас есть несколько условий.
|
|
|
|
|
|
```js
|
|
|
// синтаксис
|
|
|
if (condition) {
|
|
|
// код
|
|
|
} else if (condition) {
|
|
|
// код
|
|
|
} else {
|
|
|
// код
|
|
|
}
|
|
|
```
|
|
|
|
|
|
**Пример:**
|
|
|
|
|
|
```js
|
|
|
let a = 0;
|
|
|
if (a > 0) {
|
|
|
console.log(`${a} это положительное число`);
|
|
|
} else if (a < 0) {
|
|
|
console.log(`${a} это отрицательное число`);
|
|
|
} else if (a == 0) {
|
|
|
console.log(`${a} это 0`);
|
|
|
} else {
|
|
|
console.log(`${a} это не число`);
|
|
|
}
|
|
|
```
|
|
|
|
|
|
```js
|
|
|
// if else if else
|
|
|
let weather = "солнечно";
|
|
|
if (weather === "дождливо") {
|
|
|
console.log("Вам нужен плащ от дождя.");
|
|
|
} else if (weather === "облачно") {
|
|
|
console.log("Может быть холодно, тебе нужен пиджак.");
|
|
|
} else if (weather === "солнечно") {
|
|
|
console.log("Выйди свободным.");
|
|
|
} else {
|
|
|
console.log("Не нужно пальто от дождя.");
|
|
|
}
|
|
|
```
|
|
|
|
|
|
### Switch
|
|
|
|
|
|
Переключатель является альтернативой для `if else if else else`.
|
|
|
Оператор `switch` начинается с ключевого слова `switch`, за которым следуют скобки и блок кода. Внутри блока кода у нас будут разные случаи (case). Блок case выполняется, если значение в скобках оператора `switch` совпадает со значением case. Операртор `break` служит для прерывания выполнения, чтобы выполнение кода не прекратилось после выполнения условия. Блок `default` выполняется, если все случаи не удовлетворяют условию.
|
|
|
|
|
|
```js
|
|
|
switch (caseValue) {
|
|
|
case 1:
|
|
|
// код
|
|
|
break;
|
|
|
case 2:
|
|
|
// код
|
|
|
break;
|
|
|
case 3:
|
|
|
// код
|
|
|
default:
|
|
|
// код
|
|
|
}
|
|
|
```
|
|
|
|
|
|
```js
|
|
|
let weather = "облачно";
|
|
|
switch (weather) {
|
|
|
case "дождливо":
|
|
|
console.log("Вам нужен плащ от дождя.");
|
|
|
break;
|
|
|
case "облачно":
|
|
|
console.log("Может быть холодно, тебе нужен пиджак.");
|
|
|
break;
|
|
|
case "солнечно":
|
|
|
console.log("Выйди свободно.");
|
|
|
break;
|
|
|
default:
|
|
|
console.log("Не нужно пальто от дождя.");
|
|
|
}
|
|
|
|
|
|
// Switch больше примеров
|
|
|
let dayUserInput = prompt("Какой сегодня день ?");
|
|
|
let day = dayUserInput.toLowerCase();
|
|
|
|
|
|
switch (day) {
|
|
|
case "понедельник":
|
|
|
console.log("Сегодня понедельник");
|
|
|
break;
|
|
|
case "вторник":
|
|
|
console.log("Сегодня вторник");
|
|
|
break;
|
|
|
case "среда":
|
|
|
console.log("Сегодня среда");
|
|
|
break;
|
|
|
case "четверг":
|
|
|
console.log("Сегодня четверг");
|
|
|
break;
|
|
|
case "пятница":
|
|
|
console.log("Сегодня пятница");
|
|
|
break;
|
|
|
case "суббота":
|
|
|
console.log("Сегодня суббота");
|
|
|
break;
|
|
|
case "воскресенье":
|
|
|
console.log("Сегодня воскресенье");
|
|
|
break;
|
|
|
default:
|
|
|
console.log("Это не день недели.");
|
|
|
}
|
|
|
```
|
|
|
|
|
|
### Тернарный оператор
|
|
|
|
|
|
Другой способ написания условных выражений - использование тернарных операторов. Мы уже рассматривали этот способ в других разделах, но нам следует также упомянуть о нем здесь.
|
|
|
|
|
|
```js
|
|
|
let isRaining = true;
|
|
|
isRaining
|
|
|
? console.log("You need a rain coat.")
|
|
|
: console.log("No need for a rain coat.");
|
|
|
```
|
|
|
|
|
|
🌕 Вы необыкновенный и у вас есть замечательный потенциал. Вы только что выполнили четвертый день испытаний и прошли четыре шага на пути к успеху. Теперь сделайте несколько упражнений для вашего мозга и ваших мышц.
|
|
|
|
|
|
## 💻 Упражнения
|
|
|
|
|
|
### Упражнения: уровень 1
|
|
|
|
|
|
1. Получить пользовательский ввод с помощью `prompt("Введите свой возраст:")`. Если пользователю 18 лет или больше, вывести сообщение: вы достаточно взрослый, чтобы ездить, но если меньше 18 - выведете сообщение,в котором говорится что нужно подождать определённое количество лет, чтобы водить машину.
|
|
|
|
|
|
```sh
|
|
|
Введите свой возраст: 30
|
|
|
Вы достаточно взрослый, чтобы водить.
|
|
|
|
|
|
Введите свой возраст: 15
|
|
|
Вам осталось 3 года до вождения.
|
|
|
```
|
|
|
|
|
|
2. Сравните значения myAge и yourAge с помощью if ... else. На основе сравнения выведите результат в консоль, указав, кто старше (я или вы). Используйте prompt("Enter your age:") для получения возраста в качестве входных данных.
|
|
|
|
|
|
```sh
|
|
|
Введите свой возраст: 30
|
|
|
Ты на 5 лет старше меня.
|
|
|
```
|
|
|
|
|
|
3. Если a больше, чем b, вернуть «a больше, чем b», иначе «a меньше, чем b». Попробуйте реализовать это различными способами:
|
|
|
|
|
|
- используя if else
|
|
|
- тернарный оператор.
|
|
|
|
|
|
```js
|
|
|
let a = 4;
|
|
|
let b = 3;
|
|
|
```
|
|
|
|
|
|
```sh
|
|
|
4 больше 3
|
|
|
```
|
|
|
|
|
|
4. Чётные числа делятся на 2, а остаток равен нулю. Как проверить, является ли число чётным или нет с помощью JavaScript?
|
|
|
|
|
|
```sh
|
|
|
Введите число: 2
|
|
|
2 - чётное число
|
|
|
|
|
|
Введите число: 9
|
|
|
9 является нечётным числом.
|
|
|
```
|
|
|
|
|
|
### Упражнения: уровень 2
|
|
|
|
|
|
1. Напишите код, который может дать оценку студентам в соответствии с их баллами:
|
|
|
- 80-100, A
|
|
|
- 70-79, B
|
|
|
- 60-69, C
|
|
|
- 50-59, D
|
|
|
- 0-49, F
|
|
|
2. Проверьте, является ли сезон: осенью, зимой, весной или летом. Если пользователь ввёл :
|
|
|
- сентябрь, октябрь или ноябрь, сезон осень.
|
|
|
- декабрь, январь или февраль, сезон зима.
|
|
|
- март, апрель или май, сезон весна
|
|
|
- июнь, июль или август, сезон лето
|
|
|
3. Проверьте, является ли день выходным или рабочим днем. Ваш сценарий примет день как вход.
|
|
|
|
|
|
```sh
|
|
|
Какой сегодня день? Суббота
|
|
|
Суббота - выходной день.
|
|
|
|
|
|
Какой сегодня день? СубБоТта
|
|
|
Суббота - выходной день.
|
|
|
|
|
|
Какой сегодня день? Пятница
|
|
|
Пятница рабочий день.
|
|
|
|
|
|
Какой сегодня день? ПяТНИца
|
|
|
Пятница рабочий день.
|
|
|
```
|
|
|
|
|
|
### Упражнения: уровень 3
|
|
|
|
|
|
1. Напишите программу, которая сообщает количество дней в месяце.
|
|
|
|
|
|
```sh
|
|
|
Введите месяц: январь
|
|
|
В январе 31 день.
|
|
|
|
|
|
Введите месяц: ЯНВАРЬ
|
|
|
В январе 31 день
|
|
|
|
|
|
Введите месяц: февраль
|
|
|
Февраль имеет 28 дней.
|
|
|
|
|
|
Введите месяц: феВРаль
|
|
|
Февраль имеет 28 дней.
|
|
|
```
|
|
|
|
|
|
🎉 ПОЗДРАВЛЯЕМ ! 🎉
|
|
|
|
|
|
[<< День 3](https://github.com/Asabeneh/30DaysOfJavaScript/blob/master/RU/03_Day/03_booleans_operators_date.md) | [День 5 >>](https://github.com/Asabeneh/30DaysOfJavaScript/blob/master/RU/05_Day/05_day_arrays.md)
|