как перевести число в денежный формат (чтобы 3 числа отделялись пробелом)? в JS
как перевести число в денежный формат (чтобы 3 числа отделялись пробелом)? в JS
33333333333333 стало : 333 333 333 333.00
Ответы (3 шт):
Автор решения: Denis640Kb
→ Ссылка
let val = '33333333333333';
function makeMoney(n) {
return parseFloat(n).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, "$1 ");
}
console.log(makeMoney(val));
Автор решения: HackerU
→ Ссылка
1) разворачиваем строку, чтобы не полные кластеры оставались слева (пример: 13 453, а не 134 53)
2) делим на кластеры по 3
3) переворачиваем обратно, убираем лишние пробелы по бокам, добавляем 00 в конце.
function toFormat(str){
return str.split('').reverse().join('')
.match(/\d{0,3}/g).join(' ')
.split('').reverse().join('').trim()+'.00'
}
Автор решения: Дмытрык
→ Ссылка
const num = 33333333333333;
console.log(num.toLocaleString('ru-RU')+'.00')