#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;
Комментариев нет:
Отправить комментарий