#javascript
Есть такой код, который производит вычисления и выводит результат.
rez = Math.round(numb*pay*2.1/100);
$(".result p span").text(rez);
Задача разбить выводимое число по разрядам, т.е. вместо 1000000 выводить 1 000 000.
Пробую такой вариант:
rez = Math.round(numb*pay*2.1/100);
var outrez = rez.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 ');
$(".result p span").text(outrez);
Но результата нет вообще никакого.
Подскажите как исправить. Спасибо.
Ответы
Ответ 1
Попробуйте так: (1000000).toLocaleString('ru')Ответ 2
Код с регулярным выражением тоже работает. Ошибка заключается в том, что Math.round - возвращает число, а у числа нет метода replace, он есть у строки. Поэтому число надо просто привести к строке. var numb = 10572, pay = 11073; rez = Math.round(numb*pay*2.1/100); var outrez = (rez+'').replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 '); document.body.innerHTML = outrez;
Комментариев нет:
Отправить комментарий