Разбить число на миссив, как ?
Люди кто может помочь? никак не разберу как мне число разбить на массив?
т.е. У меня есть число var а = 1020; я например хочу получить только число 2, как это сделать? |
var а = 1020; var b = a+''; alert(b.substring(2,0)); както так |
хех, я тут порылся нашел интересный метод split, с помощью него можно это сделать... ток остается понять как )
|
var а = 1020;
var b = String(а).split("");
alert(b[2]);
alert(b[0]);
|
о! спасибо гуру!! ты оказал не заменимую помощь! благодарю за опыт
|
*facepalm*
это же простейшая задача при изучении любого языка программирования, и решается она без приведения к строке. alert( (1020/10)%10 ); |
Gvozd,
так масив же мы из этого не получим. И кстати как твоим способом получить допустим 4 элемент |
Цитата:
alert( (1020/1)%10 ); Только еще Math.floor надо, а то неточные вычисления. |
Цитата:
к тому же насколько я понял ТС-а, ему не столько массив нужен, сколько конкретные разряды числа
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);
Цитата:
Цитата:
|
Riim,
сори не то спросил alert( Math.round((2345/1)%10) ); вот тут третий получить как? |
Gvozd,
а теперь поставьте число 2345 или вообще любое число где есть цифра 4, а за ней следует 5 |
Цитата:
var a = 2345; alert( ~~(a / 10) % 10 ); |
exec,
придирок нет=) |
Цитата:
|
вариант ))))
for (var temp = 2345, arr = []; temp;) {
arr.unshift(temp % 10);
temp = (temp - temp % 10) / 10
};
alert(arr);
|
for(var i=1,mass=[],number=123456789,temp=0;true;i*=10) {
temp=parseInt((number/i)%10);
if(temp==0) {
break;
}
mass.unshift(temp);
}
alert(mass);
|
:D
|
А вот и мой вариант
var number = 54321;
alert(/(.)/.constructor(("India is the greatest country!").replace(/(.)/g,'(.)?'),'g').exec(number)[2]) /* 4 */
:D |
subzey, гг )
|
subzey,
Жжошь )) |
|
| Часовой пояс GMT +3, время: 03:17. |