Разбить число на миссив, как ?
Люди кто может помочь? никак не разберу как мне число разбить на массив?
т.е. У меня есть число 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, время: 04:05. |