Возможно, вопрос не стоит и выеденного яйца, но все же хочу разобраться. Предположим есть задача перевести номер месяца в строку, набросал несколько вариантов функции:
с and or:
return num === 0 && 'jan' ||
num === 1 && 'feb' ||
...
and:
num === 0 && (string = 'jan');
num === 1 && (string = 'feb');
...
switch:
switch (num) {
case 0:
string = 'jan';
break;
case 1:
string = 'feb';
break;...
if:
if (num === 0) {
return 'jan'
}
if (num === 1) {
return 'feb'
}...
if else:
if (num === 0) {
return 'jan'
} else
if (num === 1) {
return 'feb'
} else...
Код на jsperf.
Тесты на скорость победителя не выявили (в разных браузерах победители разные).
Что бы вы использовали для описанной задачи - switch или что-то иное и почему?