JavaScript数组排序reverse()和sort()方法详解


Posted in Javascript onDecember 24, 2017

JavaScript中数组排序的方法有两个reverse()和sort()。

reverse()方法会反转数组项的顺序:

var arr = [1,2,3,4,5];
 arr.reverse();
 alert(arr); //5,4,3,2,1

sort()方法会按照字符串升序排列数组项,sort()方法会调用每个数组项的tostring()方法,即使数组中的每一项都是数值,sort()方法比较的也是字符串:

var arr = [1,2,11,15,5];
arr.sort();
alert(arr); // 1,11,15,2,5

这种方式在很多情况下并不是最好的方案,因此sort()方法可以接收一个比较函数作为参数。比较函数需要两个参数,如果第一个参数应该位于第二个参数之前则需要返回一个负数,如果两个参数相等则返回0,如果第一个参数应该位于第二个参数之后,则返回一个正数:

var arr = [1,2,11,15,5];
arr.sort(function(val1,val2){
return val1-val2;
 });
 alert(arr); // 1,2,5,11,15

由于比较函数通过返回一个小于零,等于零或大于零的志来影响排序结果,因此减法操作可以很好的处理这些情况。

总结

以上所述是小编给大家介绍的JavaScript数组排序reverse()和sort()方法详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
js传参数受特殊字符影响错误的解决方法
Oct 21 Javascript
javascript对JSON数据排序的3个例子
Apr 12 Javascript
获取中文字符串的实际长度代码
Jun 05 Javascript
js实现适用于素材网站的黑色多级菜单导航条效果
Aug 24 Javascript
如何让一个json文件显示在表格里【实现代码】
May 09 Javascript
BootStrap selectpicker
Jun 20 Javascript
简单实现轮播图效果的实例
Jul 15 Javascript
JS使用iView的Dropdown实现一个右键菜单
May 06 Javascript
发布订阅模式在vue中的实际运用实例详解
Jun 09 Javascript
javascript数组的定义及操作实例
Nov 10 Javascript
JS实现秒杀倒计时特效
Jan 02 Javascript
Vue-CLI与Vuex使用方法实例分析
Jan 06 Javascript
JS生成随机打乱数组的方法示例
Dec 23 #Javascript
JavaScript实现的超简单计算器功能示例
Dec 23 #Javascript
Angular实现较为复杂的表格过滤,删除功能示例
Dec 23 #Javascript
Vue.js 的移动端组件库mint-ui实现无限滚动加载更多的方法
Dec 23 #Javascript
9种使用Chrome Firefox 自带调试工具调试javascript技巧
Dec 22 #Javascript
JavaScript中的一些隐式转换和总结(推荐)
Dec 22 #Javascript
原生JS写Ajax的请求函数功能
Dec 22 #Javascript
You might like
PHP源码之 ext/mysql扩展部分
2009/07/17 PHP
使用php+Ajax实现唯一校验实现代码[简单应用]
2011/11/29 PHP
PHP文件与目录操作示例
2016/12/24 PHP
用 Javascript 验证表单(form)中多选框(checkbox)值
2009/09/08 Javascript
超炫的jquery仿flash导航栏特效
2014/11/11 Javascript
JavaScript弹出新窗口后向父窗口输出内容的方法
2015/04/06 Javascript
jQuery实现文件上传进度条特效
2015/08/12 Javascript
javascript使用Promise对象实现异步编程
2016/03/01 Javascript
js实时获取窗口大小变化的实例代码
2016/11/18 Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
2018/08/31 Javascript
微信小程序实现日期格式化和倒计时
2020/11/01 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
es6数组的flat(),flatMap()函数用法实例分析
2020/04/18 Javascript
Vue watch响应数据实现方法解析
2020/07/10 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
python 开发的三种运行模式详细介绍
2017/01/18 Python
详解Python中的type和object
2018/08/15 Python
自定义django admin model表单提交的例子
2019/08/23 Python
Django使用uwsgi部署时的配置以及django日志文件的处理方法
2019/08/30 Python
Python3批量创建Crowd用户并分配组
2020/05/20 Python
Python判断变量是否是None写法代码实例
2020/10/09 Python
Django filter动态过滤与排序实现过程解析
2020/11/26 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
英国著名的化妆品折扣网站:Allbeauty.com
2016/07/21 全球购物
Roxy美国官网:澳大利亚冲浪、滑雪健身品牌
2016/07/30 全球购物
说一下Linux下有关用户和组管理的命令
2016/01/04 面试题
幼儿园中班新学期寄语
2014/01/18 职场文书
希特勒的演讲稿
2014/05/23 职场文书
优秀班集体先进事迹材料
2014/05/28 职场文书
质检员岗位职责
2015/02/03 职场文书
工作态度怎么写
2015/06/25 职场文书
2015年暑期社会实践方案
2015/07/14 职场文书
小学班主任教育随笔
2015/08/15 职场文书
如何用python绘制雷达图
2021/04/24 Python