js 数组排序

  sort()方法使数组中的元素按照一定的顺序排列。

  语法:

  arrayObject.sort(方法函数)

  参数说明:

  1.如果不指定<方法函数>,则按unicode码顺序排列。

  2.如果指定<方法函数>,则按<方法函数>所指定的排序方法排序。

  注意: 该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下: 

    若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。
    若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。
    若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。

 

1 <script type="text/javascript">
2   var myarr1 = new Array("Hello","John","love","JavaScript"); 
3   var myarr2 = new Array("80","16","50","6","100","1");
4   document.write(myarr1.sort()+"<br>");
5   document.write(myarr2.sort());
6 </script>

  结果:  

1 Hello,JavaScript,John,love
2 1,100,16,50,6,80

  注意:上面的代码没有按照数值的大小对数字进行排序。

  如要实现这一点,就必须使用一个排序函数,代码如下:

  

1 <script type="text/javascript">
2   function sortNum(a,b) {
3   return a - b;
4  //升序,如降序,把“a - b”该成“b - a”
5 }
6  var myarr = new Array("80","16","50","6","100","1");
7   document.write(myarr + "<br>");
8   document.write(myarr.sort(sortNum));
9 </script>

 

 

 

posted @ 2016-01-20 17:02  Young汨  阅读(217)  评论(0编辑  收藏  举报