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实现杯子倒水问题自动求解程序
Mar 25 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
Jan 07 Javascript
JS中实现简单Formatter函数示例代码
Aug 19 Javascript
Json实现异步请求提交评论无需跳转其他页面
Oct 11 Javascript
JavaScript使用Math.Min返回两个数中较小数的方法
Apr 06 Javascript
基于angularJS的表单验证指令介绍
Oct 21 Javascript
javascript中Number的方法小结
Nov 21 Javascript
jQuery窗口拖动功能的实现代码
Feb 04 Javascript
BootStrap table删除指定行的注意事项(笔记整理)
Feb 05 Javascript
详解基于vue-cli优化的webpack配置
Nov 06 Javascript
Element UI 自定义正则表达式验证方法
Sep 04 Javascript
layui实现下拉框三级联动
Jul 26 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多种序列化与反序列化的方法
2013/06/06 PHP
PHP 双链表(SplDoublyLinkedList)简介和使用实例
2015/05/12 PHP
php实现向javascript传递数组的方法
2015/07/27 PHP
PHP二维数组去重算法
2016/12/17 PHP
php中照片旋转 (orientation) 问题的正确处理
2017/02/16 PHP
找到一点可怜的关于dojo资料,谢谢作者!
2006/12/06 Javascript
跨域表单提交状态的变相判断代码
2009/11/12 Javascript
jquery等宽输出文字插件使用介绍
2013/09/18 Javascript
JavaScript时间操作之年月日星期级联操作
2016/01/15 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
js单页hash路由原理与应用实战详解
2017/08/14 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
用Python代码来绘制彭罗斯点阵的教程
2015/04/03 Python
Python中操作符重载用法分析
2016/04/29 Python
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
2016/05/27 Python
python决策树之C4.5算法详解
2017/12/20 Python
python操作列表的函数使用代码详解
2017/12/28 Python
Python3数据库操作包pymysql的操作方法
2018/07/16 Python
Python定时发送消息的脚本:每天跟你女朋友说晚安
2018/10/21 Python
CentOS7安装Python3的教程详解
2019/04/10 Python
关于keras中keras.layers.merge的用法说明
2020/05/23 Python
详解Python 最短匹配模式
2020/07/29 Python
中国最大的名表商城:万表网
2016/08/29 全球购物
世界上最大的网络主机公司:1&1
2016/10/12 全球购物
Haggar官网:美国男装品牌
2020/02/16 全球购物
公司营业员的工作总结自我评价
2013/10/05 职场文书
运动会解说词100字
2014/01/31 职场文书
青安岗事迹材料
2014/05/14 职场文书
医学检验专业自荐信
2014/09/18 职场文书
劳动保障个人工作总结
2015/03/04 职场文书
名人传读书笔记
2015/06/26 职场文书
情人节单身感言
2015/08/03 职场文书
SpringBoot2 参数管理实践之入参出参与校验的方式
2021/06/16 Java/Android
Nginx配置之实现多台服务器负载均衡
2021/08/02 Servers
Java字符串逆序方法详情
2022/03/21 Java/Android
MySQL查询日期时间
2022/05/15 MySQL