Освоение оператора переключателя JavaScript — SitePoint
ДомДом > Новости > Освоение оператора переключателя JavaScript — SitePoint

Освоение оператора переключателя JavaScript — SitePoint

Aug 29, 2023

Оператор переключения JavaScript — это способ принятия решений в вашем коде на основе различных условий. Это более организованная и краткая альтернатива использованию нескольких операторов if-else. Оператор switch оценивает заданное выражение, которое может быть переменной или значением, и сравнивает его с несколькими возможными случаями. Если значение выражения соответствует одному из случаев, выполняется соответствующий блок кода (набор инструкций). Если совпадение не найдено, необязательный вариант по умолчанию может быть выполнен в качестве резервного варианта, то есть он запускается, когда ни один из других случаев не применим.

Например, вот простой оператор переключения, который проверяет значение переменной с именем day:

Овладев операторами переключения, вы сможете писать более чистый, эффективный и лучше организованный код JavaScript, что в конечном итоге улучшит ваши общие навыки программирования.

Операторы переключения начинаются с ключевого слова switch, за которым следует выражение в круглых скобках. Это выражение сравнивается с серией меток регистра, заключенных в блок переключателей. Каждая метка варианта представляет собой отдельное значение, а блок кода, следующий за регистром, выполняется, когда выражение соответствует значению метки варианта. Оператор прерывания обычно используется для выхода из блока переключения после выполнения соответствующего случая, гарантируя выполнение только намеченного блока кода и предотвращая переход к следующим случаям. При необходимости можно включить регистр по умолчанию, чтобы обеспечить резервное действие, когда ни одна из меток варианта не соответствует выражению, гарантируя ответ для неизвестных значений.

Оператор switch является альтернативой использованию операторов if-else, когда вам нужно обработать несколько условий. Хотя операторы if-else подходят для проверки ряда условий, которые могут быть выражены как истинные или ложные, операторы переключения более эффективны при работе с одним выражением, которое может принимать несколько различных значений. По сути, операторы переключения могут сделать ваш код чище, более организованным и простым для чтения, когда вам нужно управлять несколькими связанными условиями.

Например, рассмотрим следующую структуру if-else:

Эквивалентный оператор переключения будет выглядеть так:

Оператор switch предлагает более организованный и читаемый способ обработки нескольких условий, особенно при работе с большим количеством случаев. В операторе переключения вычисляемым выражением является переменная или значение в круглых скобках (в данном примере — переменная color).

И переключатель, и if-else решают схожие проблемы и имеют преимущества и недостатки в зависимости от ваших сценариев использования. Чтобы помочь вам принять решение, я создал простой оператор переключения:

Оператор switch предоставляет дополнительные функциональные возможности и концепции, которые можно использовать для повышения производительности, читаемости и краткости вашего кода.

Случай по умолчанию в операторе переключения выполняется, когда ни один из других случаев не соответствует предоставленному выражению. Он служит запасным вариантом для обработки неожиданных или неизвестных значений, гарантируя предоставление ответа даже в случае отсутствия соответствующего случая.

Ключевое слово Break используется в операторе переключения для выхода из блока переключения, как только соответствующий случай найден и выполнен. Это не позволяет коду продолжать выполнение оставшихся случаев, обеспечивая создание только правильного вывода.

Случай не может иметь более одного условия в операторе переключения. Чтобы объединить несколько условий в одном случае, рассмотрите возможность использования метода провала. Это не только сэкономит ваше время, но и гарантирует, что вы не повторитесь.

Провал в операторе переключения происходит, когда вы намеренно опускаете ключевое слово прерывания в случае, позволяя продолжить выполнение кода до следующего случая(ов) до тех пор, пока не будет обнаружен разрыв или не будет достигнут конец блока переключения. Это может быть полезно, когда несколько случаев используют один и тот же вывод или действие.

Частой ошибкой при использовании операторов переключателя является не включение оператора прерывания после каждого случая. Эта ошибка приводит к непреднамеренному сбою и выполнению нескольких случаев вместо нужного.