Switch vs if-else ветвящейся структуры управления в Node.JS
Какой из них хорош для использования, когда в программе Node.JS имеется большое количество ветвящихся потоков.
Переключатель
switch(n)
{
case 1:
execute code block 1
break;
case 2:
execute code block 2
break;
default:
code to be executed if n is different from case 1 and 2
}
OR
если-иначе
if (condition1)
{
execute code block 1
}
else if(condition2)
{
execute code block 2
}
else
{
code to be executed if n is different from condition1 and condition2
}
Ответы
Ответ 1
Для всего лишь нескольких элементов разница небольшая. Если у вас много предметов, вы обязательно должны использовать переключатель. Это дает лучшую производительность, чем if-else.
Если коммутатор содержит более пяти элементов, он реализуется с помощью таблицы поиска или хеш-листа. Это означает, что все элементы получают одинаковое время доступа по сравнению со списком if-else, где последний элемент занимает гораздо больше времени, чтобы достичь, поскольку он должен сначала оценить каждое предыдущее условие.
Ответ 2
switch(n)
{
case 1,3,4:
execute code block 1
break;
case 2,5,9,10:
execute code block 2
break;
default:
code to be executed if n is different from first 2 cases.
}
Чтобы записать шаги if... else if... else для вышеуказанного случая, вам нужно будет написать оператор условия OR (||) 'и повторить переменную' n 'в инструкции, Если в качестве случаев переключения можно разделить только запятую ','. Таким образом, коммутатор более читабельен для такого случая.