1. JavaScript / Говнокод #10608

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    switch (achievements.length) {
      case 0: return 0;
      case 1: return 30;
      case 2: return 60;
      case 3: return 75;
      case 4: return 90;
      case 5: return 100;
      default: return 0;
    }

    зато не if'ы

    Запостил: dimalev, 07 Июня 2012

    Комментарии (20) RSS

    • return ({1:30, 2:60, 3:75, 4:90, 5:100})[achievements.length] || 0;
      Ответить
    • а как должно быть?
      Ответить
      • думаю так как еугене написал, только я бы не объект использовал, а массив с нулябрём, тем более что для него тоже значение есть - 0
        Ответить
        • return [0, 30, 60, 75, 90, 100][achievements.length] || 0;

          типа этого что-ли? по мне case как-то читабельнее выглядит. я бы в данном примере только case: 0 убрал, один фиг default возвращает тот же результат.
          Ответить
        • > еугене
          Юджин
          Ответить
      • для ухода от switch использовать шаблон проектирования factory method.
        Маразмировать, так по крупному.
        Ответить
        • собственно это и есть кусок этого method'а
          Ответить
        • к вечеру башка не особо варит: а как factory method убирает свич в этом случае?
          Ответить
    • да это же Java :)
      Ответить
    • показать все, что скрытоЗАЙДИТЕ НА ЭТОТ САЙТ!!!!!!! http://viois.ru/ ОН НЕРЕАЛЬНО ПОЛЕЗНЫЙ!!!!!!
      Ответить

    Добавить комментарий