首页 > 编程 > JavaScript > 正文

深入理解js数组的sort排序

2019-11-20 09:52:04
字体:
来源:转载
供稿:网友

废话少说直接上代码:

<body>  <div>  sort()对数组排序,不开辟新的内存,对原有数组元素进行调换  </div>  <div id="showBox">  1、简单数组简单排序  <script type="text/javascript">    var arrSimple=new Array(1,8,7,6);    arrSimple.sort();    document.writeln(arrSimple.join());  </script>  </div>  <div>  2、简单数组自定义排序  <script type="text/javascript">    var arrSimple2=new Array(1,8,7,6);    arrSimple2.sort(function(a,b){      return b-a});    document.writeln(arrSimple2.join());  </script>  解释:a,b表示数组中的任意两个元素,若return > 0 b前a后;reutrn < 0 a前b后;a=b时存在浏览器兼容  简化一下:a-b输出从小到大排序,b-a输出从大到小排序。  </div>  <div>  3、简单对象List自定义属性排序  <script type="text/javascript">    var objectList = new Array();    function Persion(name,age){      this.name=name;      this.age=age;      }    objectList.push(new Persion('jack',20));    objectList.push(new Persion('tony',25));    objectList.push(new Persion('stone',26));    objectList.push(new Persion('mandy',23));    //按年龄从小到大排序    objectList.sort(function(a,b){      return a.age-b.age});    for(var i=0;i<objectList.length;i++){      document.writeln('<br />age:'+objectList[i].age+' name:'+objectList[i].name);      }  </script>  </div>  <div>  4、简单对象List对可编辑属性的排序  <script type="text/javascript">    var objectList2 = new Array();    function WorkMate(name,age){      this.name=name;      var _age=age;      this.age=function(){        if(!arguments)        {          _age=arguments[0];}        else        {          return _age;}        }              }    objectList2.push(new WorkMate('jack',20));    objectList2.push(new WorkMate('tony',25));    objectList2.push(new WorkMate('stone',26));    objectList2.push(new WorkMate('mandy',23));    //按年龄从小到大排序    objectList2.sort(function(a,b){      return a.age()-b.age();      });    for(var i=0;i<objectList2.length;i++){      document.writeln('<br />age:'+objectList2[i].age()+' name:'+objectList2[i].name);      }  </script>  </div></body>

以上这篇深入理解js数组的sort排序就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表