Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Разбить число на миссив, как ? (https://javascript.ru/forum/misc/11561-razbit-chislo-na-missiv-kak.html)

Bogdan808 31.08.2010 10:51

Разбить число на миссив, как ?
 
Люди кто может помочь? никак не разберу как мне число разбить на массив?
т.е. У меня есть число

var а = 1020;

я например хочу получить только число 2, как это сделать?

DooMer 31.08.2010 10:55

var а = 1020;
var b = a+'';
alert(b.substring(2,0));

както так

Bogdan808 31.08.2010 11:00

хех, я тут порылся нашел интересный метод split, с помощью него можно это сделать... ток остается понять как )

Skipp 31.08.2010 11:05

var а = 1020;
var b = String(а).split("");
alert(b[2]);
alert(b[0]);

Bogdan808 31.08.2010 11:08

о! спасибо гуру!! ты оказал не заменимую помощь! благодарю за опыт

Gvozd 31.08.2010 11:58

*facepalm*
это же простейшая задача при изучении любого языка программирования, и решается она без приведения к строке.
alert( (1020/10)%10 );

Skipp 31.08.2010 12:07

Gvozd,
так масив же мы из этого не получим.

И кстати как твоим способом получить допустим 4 элемент

Riim 31.08.2010 12:36

Цитата:

Сообщение от Skipp
И кстати как твоим способом получить допустим 4 элемент

alert( (1020/1)%10 );

Только еще Math.floor надо, а то неточные вычисления.

Gvozd 31.08.2010 12:38

Цитата:

Сообщение от Skipp
так масив же мы из этого не получим.

спокойно.
к тому же насколько я понял ТС-а, ему не столько массив нужен, сколько конкретные разряды числа
var num = 2345;
var arr=[];
for(var temp = num;Math.round(temp)!=0;temp/=10,temp = Math.floor(temp)){
arr.unshift(temp%10);
}
alert(arr);

Цитата:

Сообщение от Skipp
И кстати как твоим способом получить допустим 4 элемент

а какая с ним проблема?
Цитата:

Сообщение от Riim
Только еще Math.round надо, а то неточные вычисления.

спасибо, забыл об этом

Skipp 31.08.2010 12:39

Riim,
сори не то спросил
alert( Math.round((2345/1)%10) );
вот тут третий получить как?


Часовой пояс GMT +3, время: 02:55.