Показать сообщение отдельно
  #1 (permalink)  
Старый 15.12.2013, 13:55
Аватар для Placido
Новичок на форуме
Отправить личное сообщение для Placido Посмотреть профиль Найти все сообщения от Placido
 
Регистрация: 06.11.2013
Сообщений: 5

switch и альтернативы - что использовать?
Возможно, вопрос не стоит и выеденного яйца, но все же хочу разобраться. Предположим есть задача перевести номер месяца в строку, набросал несколько вариантов функции:

с 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 или что-то иное и почему?
Ответить с цитированием