# Необязательность break в конструкции switch-case в JavaScript

Команда `break` в конструкции `switch-case` не является обязательной. При отсутствии `break` после выполнения задуманного `case`, выполнятся и все `case` ниже него.

Давайте посмотрим на примере:

`let num = 1; // пусть здесь число 1 switch (num) { case 1: console.log(1); // сработает это case 2: console.log(2); // сработает и это case 3: console.log(3); // сработает и это }`

Изменим значение переменной:

`let num = 2; // пусть здесь число 2 switch (num) { case 1: console.log(1); case 2: console.log(2); // сработает это case 3: console.log(3); // сработает и это }`

Изменим значение переменной:

`let num = 3; // пусть здесь число 3 switch (num) { case 1: console.log(1); case 2: console.log(2); case 3: console.log(3); // сработает это }`

Иногда такую особенность используют, при решении задач. Смотрите пример:

`let num = 1; let res; switch (num) { case 1: case 2: res = 'a'; break; case 3: res = 'b'; break; } console.log(res);`

Очевиднее, однако, решить такую задачу через `if`:

`let num = 1; let res; if (num == 1 || num == 2) { res = 'a'; } if (num == 3) { res = 'b'; } console.log(res);`
←→
↑
en ru