Js switch: различия между версиями
Перейти к навигации
Перейти к поиску
(Новая страница: «== Краткое описание == Конструкция <code>switch</code> заменяет собой сразу несколько <code>if(...)</code>.Она представляет собой более наглядный способ сравнить выражение сразу с несколькими вариантами. == Синтаксис == Стандартная конструкция выглядит таким образом: <pre...») |
|||
| (не показано 5 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
== Краткое описание == | == Краткое описание == | ||
Конструкция <code>switch</code> заменяет собой сразу несколько <code>if(...)</code>.Она представляет собой более наглядный способ сравнить выражение сразу с несколькими вариантами. | Конструкция <code>switch</code> заменяет собой сразу несколько <code>if(...)</code>. Она представляет собой более наглядный способ сравнить выражение сразу с несколькими вариантами. | ||
== Синтаксис == | == Синтаксис == | ||
Стандартная конструкция выглядит таким образом: | Стандартная конструкция выглядит таким образом: | ||
<pre style="color: purple"> | <pre style="color: purple"> | ||
switch ( | switch (var) { | ||
case 'value1': | case 'value1': | ||
break; | break; | ||
| Строка 15: | Строка 15: | ||
}; | }; | ||
</pre> | </pre> | ||
*Переменная <code> | *Переменная <code>var</code> проверяется на строгое равенство первому значению <code>value1</code>, затем второму <code>value2</code> и так далее. | ||
*Если соответствие установлено – <code>switch</code> начинает выполняться от соответствующей директивы <code>case</code> и далее, до ближайшего <code>break</code> (или до конца <code>switch</code>). | *Если соответствие установлено – <code>switch</code> начинает выполняться от соответствующей директивы <code>case</code> и далее, до ближайшего <code>break</code> (или до конца <code>switch</code>). | ||
*Если ни один <code>case</code> не совпал – выполняется (если есть) вариант <code>default</code>. | *Если ни один <code>case</code> не совпал – выполняется (если есть) вариант <code>default</code>. | ||
== Пример использования == | == Пример использования == | ||
Наглядным примером может служить определение набора действий в зависимости от выбранного значения (например из выпадающего списка): | Наглядным примером может служить определение уникального набора действий в зависимости от выбранного значения параметра <code>state</code> (например настройки из выпадающего списка): | ||
<pre | <pre> | ||
switch (state) { | switch (state) { | ||
case 0: //частота вращения определена из сигнала | case 0: //частота вращения определена из сигнала | ||
Текущая версия от 14:40, 12 сентября 2023
Краткое описание
Конструкция switch заменяет собой сразу несколько if(...). Она представляет собой более наглядный способ сравнить выражение сразу с несколькими вариантами.
Синтаксис
Стандартная конструкция выглядит таким образом:
switch (var) {
case 'value1':
break;
case 'value2':
break;
case 'value3':
break;
default:
};
- Переменная
varпроверяется на строгое равенство первому значениюvalue1, затем второмуvalue2и так далее. - Если соответствие установлено –
switchначинает выполняться от соответствующей директивыcaseи далее, до ближайшегоbreak(или до концаswitch). - Если ни один
caseне совпал – выполняется (если есть) вариантdefault.
Пример использования
Наглядным примером может служить определение уникального набора действий в зависимости от выбранного значения параметра state (например настройки из выпадающего списка):
switch (state) {
case 0: //частота вращения определена из сигнала
if (imp.FREQ() <= imp.FREQNESS()) {
gtl.log.info("Частота вращения меньше рекомендуемой", "Минимально рекомендуемая частота: " + imp.FREQNESS());
gtl.diagnostic.stop(); //принудительная остановка диагностики
};
break;
case 1: //частота вращения фиксированная
spen.frequency = imp.standart_width();
spen.lines = imp.standart_lines();
break;
case 2: //частота вращения из внешнего источника
gtl.diagnostic.interval = acq_time;
break;
};
- В данном примере для каждого значения переменной
stateопределен свой порядок действий (расчетов).