javascript  数组排序与对象排序的实例


Posted in Javascript onJuly 17, 2017

javascript  数组排序与对象排序的实例

数组排序

在使用JavaScript的时候,我们都发现了sort这个函数其实是按照字典顺序进行排序的,比如下面的这个例子:

var ary = [2, 98, 34, 45, 78, 7, 10, 100, 99];
ary.sort();
console.log(ary);

控制台输出结果:

Array [ 10, 100, 2, 34, 45, 7, 78, 98, 99 ]

这个也很显然验证了我之前所写的东西,上面的结果就是比较数组元素的第一位,然后按照这个1-9这个顺序排列,那么我们就需要给sort函数传入一个比较函数(在这里我还是得提及一下C语言的函数指针,简单说就是给一个函数传入另外一个函数,而这个传入的就像是你给出你自己的一套规则,而计算机按你这个规则执行就好了),现在也是这个道理,给出一个规则来,那就请看下面的代码:

var ary = [2, 98, 34, 45, 78, 7, 10, 100, 99];
ary.sort((a, b) => {
 return a-b;
});
console.log(ary);

降序输出:

ary.sort(function(a, b) {
 return b-a;
});
console.log(ary);

传入的函数是采用ES6的写法,等同于:

ary.sort(function(a, b) {
 return a-b;
});

输出结果:

Array [ 2, 7, 10, 34, 45, 78, 98, 99, 100 ]

Array [ 100, 99, 98, 78, 45, 34, 10, 7, 2 ]

对象排序

今天要说的排序对象,像下面那样,将多个对象放置在一个数组里面

var objArray = [
 {name : 'lily', age : 22},
 {name : 'kandy', age : 20},
 {name : 'lindy', age : 24},
 {name : 'Jone', age : 27}
];

下面就需要对它们进行排序了:

function sortObj(array, key) {
 return array.sort(function(a, b) {
  var x = a[key];
  var y = b[key];
  return x - y;
  //或者 return x > y ? 1 : (x < y ? -1 : 0);
 });
}

控制台输出结果:

javascript  数组排序与对象排序的实例

以上就是javascript  数组排序与对象排序的实例的讲解,大家如果有疑问可以留言讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
初识SmartJS - AOP三剑客
Jun 08 Javascript
jQuery使用fadein方法实现渐出效果实例
Mar 27 Javascript
JS拖拽组件学习使用
Jan 19 Javascript
JS代码防止SQL注入的方法(超简单)
Apr 12 Javascript
实例讲解Jquery中隐藏hide、显示show、切换toggle的用法
May 13 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
Jun 01 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
Jun 14 Javascript
AngularJS基础 ng-selected 指令简单示例
Aug 03 Javascript
利用原生js和jQuery实现单选框的勾选和取消操作的方法
Sep 04 Javascript
JS/jQuery判断DOM节点是否存在的简单方法
Nov 24 Javascript
js实现旋转木马效果
Mar 17 Javascript
Element-ui Layout布局(Row和Col组件)的实现
Dec 06 Vue.js
jQuery常用选择器详解
Jul 17 #jQuery
js轮播图的插件化封装详解
Jul 17 #Javascript
Vue.js中extend选项和delimiters选项的比较
Jul 17 #Javascript
Vue.js中组件中的slot实例详解
Jul 17 #Javascript
Vue.js上下滚动加载组件的实例代码
Jul 17 #Javascript
JS实现仿UC浏览器前进后退效果的实例代码
Jul 17 #Javascript
详解利用jsx写vue组件的方法示例
Jul 17 #Javascript
You might like
PHP变量内存分配问题记录整理
2013/11/27 PHP
一个php短网址的生成代码(仿微博短网址)
2014/05/07 PHP
PHP面向对象程序设计之接口用法
2014/08/20 PHP
php利用ob_start()清除输出和选择性输出的方法
2018/01/18 PHP
javascript基本语法分析说明
2008/06/15 Javascript
javascript 动态添加事件代码
2008/11/30 Javascript
jQuery中的val()示例应用
2014/02/26 Javascript
开启Javascript中apply、call、bind的用法之旅模式
2015/10/28 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
jQuery实现图片滑动效果
2017/03/08 Javascript
微信小程序 列表的上拉加载和下拉刷新的实现
2017/04/01 Javascript
Vue组件选项props实例详解
2017/08/18 Javascript
详解JS中统计函数执行次数与执行时间
2018/09/04 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
Node.js中package.json中库的版本号(~和^)
2019/04/02 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
Matplotlib中文乱码的3种解决方案
2018/11/15 Python
Python3爬虫全国地址信息
2019/01/05 Python
python 实现提取log文件中的关键句子,并进行统计分析
2019/12/24 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
2020/02/11 Python
Python json转字典字符方法实例解析
2020/04/13 Python
python3中calendar返回某一时间点实例讲解
2020/11/18 Python
paramiko使用tail实时获取服务器的日志输出详解
2020/12/06 Python
python中count函数知识点浅析
2020/12/17 Python
CSS3属性box-sizing使用指南
2014/12/09 HTML / CSS
印度在线内衣和时尚目的地:Zivame
2017/09/28 全球购物
大学生毕业自我评价范文分享
2013/11/11 职场文书
机械工程师的岗位职责
2013/11/17 职场文书
会计专业自荐信
2013/12/02 职场文书
简历中的自我评价怎么写
2014/01/29 职场文书
个人维稳承诺书
2015/05/04 职场文书
合理缓解职场压力,让你随时保持最佳状态!
2019/06/21 职场文书
如何用python清洗文件中的数据
2021/06/18 Python
Element-ui Layout布局(Row和Col组件)的实现
2021/12/06 Vue.js
2021年国产动漫公司排行前十名,玄机科技上榜,第二推出过铠甲勇士
2022/03/18 杂记