JavaScript. Інструкція switch

JavaScript. Інструкція switch


Зміст


Пошук на інших ресурсах:

 
1. Інструкція switch. Загальні поняття

Інструкція switch дозволяє вибирати один варіант з набору запропонованих. В інструкції switch поточне значення змінної або виразу порівнюється на рівність з одним з можливих варіантів, і, у випадку рівності виконується відповідний програмний код.

Синтаксис інструкції switch наступний

switch (expression) {
  case value1:
    // Instructions_1
    // ...
  break;
  case value2:
    // Instructions_2
    // ...
  break;

  ...

  case valueN:
    // Instructions_N
    // ...
  break;
  default:
    // Instructions_N+1
  break;
}

тут

  • expression – деякий вираз або значення змінної;
  • value1, value2, valueN – значення, з яким порівнюється вираз. Ці значення можуть бути числових, рядкових, символьних та логічного типів;
  • Instructions_1, Instructions_2, Instructions_N – оператори (інструкції), які виконуються у випадку, якщо результат expression співпаде відповідно з value1, value2, valueN;
  • Instructions_N+1 – оператори (інструкції), які виконуються у випадку, коли не знайдено жодного співпадіння.

Блок операторів, що визначений ключовим словом default, може бути відсутнім.

Оператори break після кожного блоку інструкцій забезпечують вихід з оператора case. Якщо прибрати оператори break, то виходу з оператора case не відбудеться і продовжиться виконання наступних операторів. Наприклад, у нижченаведеному фрагменті виконуються підряд всі оператори, починаючи з оператора, що виводить число 2.5.

var num = 2.5

switch (num) {
  case 1.5: console.log("1.5")
  case 2.5: console.log("2.5") // далі виконуються всі оператори підряд
  case 3.5: console.log("3.5")
  case 4.5: console.log("4.5")
}

 

2. Приклад обробки результату виразу, який має цілий числовий тип

Демонструється фрагмент коду, в якому для заданого номера дня тижня виводиться назва цього дня

// Інструкція switch

// Задано номер дня тижня
var day = 3

// За заданим номером вивести назву дня тижня
switch (day) {
  case 1: console.log("Monday");
  break;
  case 2: console.log("Tuesday");
  break;
  case 3: console.log("Wednesday");
  break;
  case 4: console.log("Thursday");
  break;
  case 5: console.log("Friday");
  break;
  case 6: console.log("Saturday");
  break;
  case 7: console.log("Sunday");
  break;
  default:
    console.log("Incorrect day")
  break;
}

Результат

Wednesday

 

3. Приклад обробки виразу рядкового типу

Задано назву країни. За назвою виводиться столиця цієї країни.

// Інструкція switch

// Обробка виразу, що містить рядок
var country = "Ukraine"

// На основі назви країни вивести назву її столиці
switch (country) {
  case "USA": console.log("Washington");
  break;
  case "Slovakia": console.log("Bratislava");
  break;
  case "Ukraine": console.log("Kiev");
  break;
  case "Belgium": console.log("Brussels");
  break;
  case "Ireland": console.log("Dublin");
  break;
  default:
    console.log("Another country");
  break;
}

Результат

Kiev

 

4. Приклад реалізації операції за заданим рядком

У прикладі задається рядок операції. На основі рядка виконується відповідний оператор.

// Інструкція switch

// Обробка виразу, що містить позначення операції
var symbol = '*'
var x = 5, y = 8, z

// На основі значення символу реалізувати відповідну операцію
switch (symbol) {
  case '+': z = x + y;
  break;
  case '-': z = x - y;
  break;
  case '*': z = x * y;
  break;
  case '/': z = x / y
  break;
  default:
    z = 0
  break;
}

console.log("z = " + z)

Результат

z = 40

 

5. Приклад визначення характеристики відповідної фігури на основі номера операції

У прикладі на основі заданого номеру фігури та радіусу обчислюється відповідна характеристика фігури. Результат виводиться на екран.

// Інструкція switch

// Обробка характеристики геометричної фігури

// Задано
var numFigure = 2
var radius = 3.0

switch (numFigure) {
  case 1:
    // Обчислити довжину кола
    var length = 2 * Math.PI * radius
    console.log("length = " + length)
  break;
  case 2:
    // Обчислити площу круга
    var area = Math.PI * radius * radius
    console.log("area = " + area)
  break;
  case 3:
    // Обчислити об'єм кулі
    var volume = 4.0 / 3 * Math.PI * radius * radius * radius
    console.log("volume = " + volume);
  break;
  default:
    console.log("Undefined figure");
}

Результат

area = 28.274333882308138

 


Споріднені теми