Форум 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=131401)

Tochilin 19.10.2009 19:38

Как конвертнуть число в массив?
 
Есть число, например 238. Как мне его сконвертировать в массив состоящий из 3-х элементов?
Код AS1/AS2:

arr[0]=2
arr[1]=3
arr[2]=8

А если число например 25, то массив всё равно должен быть из 3-х элементов, но первый элемент 0 (ноль).
Код AS1/AS2:

arr[0]=0
arr[1]=2
arr[2]=5


etc 19.10.2009 19:46

Код AS1/AS2:

var n:Number = 238795;
var a:Array = new Array();
while (n) {
        a.unshift(n % 10);
        n = Math.floor(n / 10);
}
while (a.length < 3) a.unshift(0);
trace(a);


Tochilin 19.10.2009 19:49

премного благодарен

Добавлено через 26 минут
ещё один вопросик.
У меня исходное число постоянно обновляется через
Код AS1/AS2:

onEnterFrame()

поэтому массив с каждым разом становится всё больше и больше.
Вот примерно так
Код AS1/AS2:

var a:Array = new Array();
this.onEnterFrame = function() {
        action(int(Math.random()*100));
};
 
function action(n:Number) {
        while (n) {
                a.unshift(n%10);
                n = Math.floor(n/10);
        }
        while (a.length<3) {
                a.unshift(0);
        }
        trace(a);
}

Как сделать, чтобы массив постоянно хранил 3 элемента, и не увеличивался в размерах?

dimarik 19.10.2009 21:06

Код AS1/AS2:

var a:Array;
this.onEnterFrame = function():Void {
        this.a = String( Math.round( Math.random()*100 ) ).split('');
        while (a.length < 3) a.unshift(0);
        trace(a);
};


etc 19.10.2009 21:44

dimarik, я так и думал, что ты пойдёшь по пути наименьшего сопротивления :)

Tochilin, нужно в action удалить все элементы из массива. Либо внести его как локальную переменную всё в тот же action.


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

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