深入理解js数组的sort排序


Posted in Javascript onMay 28, 2016

废话少说直接上代码:

<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排序就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
Jan 22 Javascript
基于jquery的时间段实现代码
Aug 02 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
Dec 25 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
Jun 24 Javascript
使用BootStrap实现用户登录界面UI
Aug 10 Javascript
js 轮播效果实例分享
Dec 28 Javascript
JavaScript Drum Kit 指南(纯 JS 模拟敲鼓效果)
Jul 23 Javascript
微信小程序block的使用教程
Apr 01 Javascript
vue+iview+less 实现换肤功能
Aug 17 Javascript
解决vue打包css文件中背景图片的路径问题
Sep 03 Javascript
用原生 JS 实现 innerHTML 功能实例详解
Apr 03 Javascript
Vue实现导航栏点击当前标签变色功能
Aug 19 Javascript
深入理解js函数的作用域与this指向
May 28 #Javascript
js和C# 时间日期格式转换的简单实例
May 28 #Javascript
JS函数arguments数组获得实际传参数个数的实现方法
May 28 #Javascript
深入理解JS函数的参数(arguments)的使用
May 28 #Javascript
深入理解js中this的用法
May 28 #Javascript
关于function类中定义变量this的简单说明
May 28 #Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
May 28 #Javascript
You might like
php中global和$GLOBALS[]的分析之一
2012/02/02 PHP
教你如何用php实现LOL数据远程获取
2014/06/10 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
2017/06/07 PHP
JSON字符串和JSON对象相互转化实例详解
2017/01/05 Javascript
使用JS 插件qrcode.js生成二维码功能
2017/02/20 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
关于webpack2和模块打包的新手指南(小结)
2017/08/07 Javascript
浅析JS抽象工厂模式
2017/12/14 Javascript
JS运动特效之完美运动框架实例分析
2018/01/24 Javascript
Vue数据双向绑定原理及简单实现方法
2018/05/18 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
Vue中watch、computed、updated三者的区别及用法
2020/07/27 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
[58:54]EG vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python卸载模块的方法汇总
2016/06/07 Python
Python+matplotlib绘制不同大小和颜色散点图实例
2018/01/19 Python
python清除字符串中间空格的实例讲解
2018/05/11 Python
python利用pandas将excel文件转换为txt文件的方法
2018/10/23 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
2020/04/19 Python
python 实现PIL模块在图片画线写字
2020/05/16 Python
Python读取Excel数据并生成图表过程解析
2020/06/18 Python
详解Flask前后端分离项目案例
2020/07/24 Python
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
html5使用canvas实现弹幕功能示例
2017/09/11 HTML / CSS
中科软测试工程师面试题
2012/06/16 面试题
拖鞋店创业计划书
2014/01/15 职场文书
人事专员工作职责
2014/02/22 职场文书
教师党员岗位承诺书
2014/05/29 职场文书
师德模范事迹材料
2014/06/03 职场文书
博士生专家推荐信
2014/09/26 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
热血教师观后感
2015/06/10 职场文书
导游经典开场白——导游词
2019/04/17 职场文书
SQL优化老出错,那是你没弄明白MySQL解释计划用法
2021/11/27 MySQL