Разделение разрядов числа пробелами.
Вдруг кто не знает. Разделить числа в тексте пробелами по разрядам поможет такая строчка кода
var str = 'Lorem ipsum 234456234 Lorem ipsum 7345287346 asdfae'; alert(str.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 ')); |
Вдруг кто не знает. Разряды нужно не пробелами разделять, а тонкими шпациями — приблизительно треть пробела ;)
|
x-yuri,
ну тогда бы уж код символа показал. |
U+2009,  
только я сам на практике не пользовался :-? |
Нашел ещё вот такое:
    (короткий пробел) |
пробелы найти не проблема. Ты знаешь когда твой короткий пробел использовать надо?
|
нет, первый раз это вижу
|
|
Цитата:
var str = "3830000"; var out = str.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, " "); На выходе я получаю значение 83 000. Как исправить? |
Пользоваться правильным методом
var str = "3830000"; alert(str.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 ')); |
Цитата:
|
Подскажите как применить к числовому типу?
|
Vyacheslav.Y,
''+7 сделать число строкой |
Цитата:
var str = '3830000'; alert(str.replace(/(\d)(?=(\d{3})+(\D|$))/g, '$1 ')); Или вообще: alert( 3830000..toLocaleString() ); Цитата:
String(123) или 123..toString() Для обратного преобразования: alert( +'3 830 000'.replace(/\s/g, '') ); |
Ruslan_xDD,
Я делал как Вы посоветовали но у меня не получилось. Подскажите на примере пожалуйста. У меня переменная revenue должна выводиться с пробелом каждые три символа: function recount() { revenue = (client+check+time)*tarif; result_outptut.html(revenue + ' руб/мес'); }; Полный код |
function recount() { var revenue = String((client + check + time) * tarif).replace(/(\d)(?=(\d{3})+(\D|$))/g, '$1 '); result_outptut.html(revenue + ' руб/мес'); }; |
каким образом это реализовать, если на странице больше 1 строки с цифрами, например, каталог товаров с ценами?
|
akklimatizator,
https://javascript.ru/forum/showthre...698#post515699 |
Часовой пояс GMT +3, время: 01:33. |