Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как выделить разряды числа? / 7 сообщений из 7, страница 1 из 1
23.05.2008, 17:44
    #35332174
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
Есть результат вычислений: 1234567.8987654
Как привести его к строковому виду: 1 234 567,90
...
Рейтинг: 0 / 0
23.05.2008, 19:23
    #35332394
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
Гугл "Math Javascript"? Не подойдёт что-ли?
...
Рейтинг: 0 / 0
24.05.2008, 04:43
    #35332732
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
Math тут совсем не подойдет. Еще toFixed может как-то помочь, но он из Number. А функции, которая еще и на группы разбивает, нет. Что-то мутить надо.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
function toString(num)
{
	num = num.toFixed( 2 );
	var parts = num.split('.');
	parts[ 0 ] = parts[ 0 ].substr( 0 , parts[ 0 ].length% 3 )+parts[ 0 ].substr(parts[ 0 ].length% 3 ).replace(/(\d{ 3 })/g,' \$1');
	return parts.join(',');
}
var number =  1234567 . 8987654 ;
alert(toString(number));
...
Рейтинг: 0 / 0
25.05.2008, 02:55
    #35333399
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
illionMath тут совсем не подойдет. Еще toFixed может как-то помочь, но он из Number. А функции, которая еще и на группы разбивает, нет. Что-то мутить надо.
На счет Math - абсолютно согласен. toFixed - пригодилось.
За пример спасибо. То что нужно было.

Нашел ещё вариант:
Код: plaintext
1.
2.
3.
4.
5.
var re1 = /(\d{ 0 , 3 })?(?=\d{ 3 }\.)/;
var re2 = /\./;

num = num.toFixed( 2 );
num = num.replace(re1, "$1 ")
alert( num.replace(re2, ","));
Вопрос снят.
...
Рейтинг: 0 / 0
25.05.2008, 05:04
    #35333431
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
AISНашел ещё вариант:
Код: plaintext
1.
var re1 = /(\d{ 0 , 3 })?(?=\d{ 3 }\.)/;
...

этот вариант годится только для чисел, у которых количество разрядов <= 6. Даже для приведенного в сабже примера (1234567.8987654) результат будет неудовлетворительный (1234 567,90)
...
Рейтинг: 0 / 0
25.05.2008, 05:13
    #35333433
mrJust
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
Радует, что не я один не сплю :)
...
Рейтинг: 0 / 0
25.05.2008, 05:22
    #35333434
apapacy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить разряды числа?
У кого-то уже солнце в зените...
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как выделить разряды числа? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]