Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Форматирование чисел (http://www.flasher.ru/forum/showthread.php?t=151312)

JokerDen 26.02.2011 00:19

Форматирование чисел
 
Требуется в поле вывода выводить число с пробелами. Например, не "123456789", а "123 456 789".
Как вариант есть идея использовать перед выводом дополнительную переменную, которая будет хранить числовое значение строкой, и уже с ней манипулировать. Но хотелось бы узнать, может быть есть встроенные средства форматирования или более простые пути решения.

Hauts 26.02.2011 00:29

Навоял по-быстрому.

Код AS1/AS2:

function formatToString(n, pattern:String) {
        // pattern like "## ### ### ###"
        var a:Array = n.toString().split("");
        var p:Array = pattern.split("");
        var resultString:String = "";
        var l:Number = pattern.length;
        for (var k:Number = 0; k<l; k++) {
                if (p[k] == "#") {
                        resultString += a.shift().toString();
                } else {
                        resultString += p[k];
                }
        }
        return resultString;
}
 
trace(formatToString((89139131313).toString(), "# ### ### ## ##"));
trace(formatToString("89139131313", "#-###-###-##-## (MTS)"));
trace(formatToString("0123456789", "# # # # # # # # # #"));



Часовой пояс GMT +4, время: 17:25.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.