ps:同样都是数组 为什么 alert(arr2); 就可以进行有效的排序,arr1就不行;<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<script type="text/javascript">
var arr1 = new Array("10","56","51","86","1","100");
var arr2=new Array();
 arr2[0] = 10;
 arr2[1] = 56;
 arr2[2] = 51;
 arr2[3] = 100;
 arr1.sort(function(a,b){return a<b?1:-1});
 arr2.sort(function(a,b){return a<b?1:-1}); //从大到小排序
 alert(arr1);
 alert(arr2);
</script>
</body>
</html>

解决方案 »

  1.   

    var arr1 = new Array(10,56,51,86,1,100);arr1这么写就行了~·
      

  2.   

    我这必须的要定义成var arr1 = new Array("10","56","51","86","1","100");这种形式,还有其他解决方案吗
    譬如说将字符串数组转换成数字数组
      

  3.   

    <script>
         var arr1 = new Array("10","56","51","86","1","100");arr1.sort(function(a,b){return +a<+b?1:-1});
    alert(arr1)    </script>那就这样~·