一个挺简单的数字排序。。怎么把字符类型的数字转化为数字类型的数字。。var number=new Array("12","20","35","40","85","9","102");
for(a in number)
for(b in number)
if(number[a]>number[b])
{var temp=number[b];
number[b]=number[a];
number[b]=temp;}
document.write("排列后为:"+number);这一段,输出的就是   排列后为:12,20,35,40,85,9,102 。。

解决方案 »

  1.   


    alert(Number("1"));
    //输出1
    alert(Number("a"));
    //输出NaN
      

  2.   

    意思是不是我把这段代码document.write("排列后为:"+number);
    改成document.write("排列后为:"+Number(number));..
      

  3.   

    parseInt 就可以js 数组有 sort 函数
      

  4.   


    var number=new Array("12","20","35","40","85","9","102");
    for(a in number)
    a = Number(a);
    function compare(a,b){
    return a-b;
    }
    number.sort(compare);
    document.write("排列后为:"+number);先转为数字,再排序
      

  5.   

    如果比较大小的话可以这样 var number=new Array("12","20","35","40","85","9","102");document.write("排列后为:"+number.sort(function(a,b){return a-b}));