深入理解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 相关文章推荐
javascript之dhDataGrid Ver2.0.0代码
Jul 01 Javascript
JSON 入门指南 想了解json的朋友可以看下
Aug 26 Javascript
jQuery EasyUI 开源插件套装 完全替代ExtJS
Mar 24 Javascript
js实现鼠标滑过文字链接色彩变化的效果
May 06 Javascript
js实现的页面矩阵图形变换特效
Jan 26 Javascript
JavaScript面向对象分层思维全面解析
Nov 22 Javascript
微信小程序之拖拽排序(代码分享)
Jan 21 Javascript
前端Electron新手入门教程详解
Jun 21 Javascript
JS正则表达式验证密码强度
Mar 18 Javascript
Vue执行方法,方法获取data值,设置data值,方法传值操作
Aug 05 Javascript
在vue中获取wangeditor的html和text的操作
Oct 23 Javascript
Vue中使用import进行路由懒加载的原理分析
Apr 01 Vue.js
深入理解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数据缓存的使用说明
2013/05/10 PHP
PHP字符串比较函数strcmp()和strcasecmp()使用总结
2014/11/19 PHP
分享10段PHP常用代码
2015/11/11 PHP
学习PHP Cookie处理函数
2016/08/09 PHP
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
当前流行的JavaScript代码风格指南
2014/09/10 Javascript
node.js中的buffer.write方法使用说明
2014/12/10 Javascript
Jquery中Event对象属性小结
2015/02/27 Javascript
JavaScript中String.prototype用法实例
2015/05/20 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
JavaScript函数柯里化原理与用法分析
2017/03/31 Javascript
Vue+SpringBoot开发V部落博客管理平台
2017/12/27 Javascript
详解react关于事件绑定this的四种方式
2018/03/09 Javascript
postman自定义函数实现 时间函数的思路详解
2019/04/17 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
解决echarts图表使用v-show控制图表显示不全的问题
2020/07/19 Javascript
[06:35]2014DOTA2国际邀请赛 老男孩梦圆西雅图中国军团世界最强
2014/07/22 DOTA
[01:14]英雄,所敬略同——2018完美盛典宣传视频
2018/12/05 DOTA
python基础教程之实现石头剪刀布游戏示例
2014/02/11 Python
python数据结构之图深度优先和广度优先实例详解
2015/07/08 Python
Mac 上切换Python多版本
2017/06/17 Python
Python装饰器(decorator)定义与用法详解
2018/02/09 Python
python中copy()与deepcopy()的区别小结
2018/08/03 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
2019/02/22 Python
解决使用export_graphviz可视化树报错的问题
2019/08/09 Python
python实现通过flask和前端进行数据收发
2019/08/22 Python
Python编写打字训练小程序
2019/09/26 Python
pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)
2020/01/18 Python
在python中利用dict转json按输入顺序输出内容方式
2020/02/27 Python
如何用Python编写一个电子考勤系统
2021/02/08 Python
汇科协同Java笔试题
2012/03/31 面试题
幼儿园大班新学期寄语
2014/01/18 职场文书
2014年民政工作总结
2014/11/26 职场文书
学校会议通知范文
2015/04/15 职场文书
2016大学生求职自荐信范文
2016/01/28 职场文书
请假条应该怎么写?
2019/06/24 职场文书