ЙажаСценарий / Говнокод #11982 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
var num_normalize = function (num) {
        if (typeof num == 'string') {
            if (num.test('.')) {
                return parseFloat(num).toFixed(2);
            }
            else {
                return parseInt(num);
            }
        }
        else if (parseInt(num) == parseFloat(num)) {
            return parseInt(num);
        }
        else return parseFloat(num).toFixed(2);
    };

Когда-то писал функцию для приведение чисел к одному виду, которые иногда приходили в виде стринги.
За говнокод сойдет?

Запостил: Stud Stud, (Updated )

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

  • Да, уже хотя бы потому, что не понятен ожидаемый результат. Почему, если есть точка, то нужно возвращать строку, а если нет - число?
    Ну и, естесственно, проще было все сразу к строке привести, и if/else не нужно было бы.
    Ответить
  • >if (parseInt(num) == parseFloat(num)) return parseInt(num);
    Если строка распарсилась одинаково как в целое, так и во флоат, распарсим ее еще раз, для верности.

    > За говнокод сойдет?
    Сойдет, плюсую.
    Ответить

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

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8