Javascript中数组sort和reverse用法分析


Posted in Javascript onDecember 30, 2014

本文实例讲述了Javascript中数组sort和reverse用法。分享给大家供大家参考。具体分析如下:

sort() 方法用于对数组的元素进行排序。

reverse()将数组中的元素逆序

首先我们来试试以下这段代码:

var values = [1, 0, 5, 15, 10];

values.reverse();

console.log(values);

输出结果会是什么呢:
[ 10, 15, 5, 0, 1 ]

reverse()也就是很简单的把数组倒过来而已,那么接下来想吐槽的是sort()

var values = [1, 0, 5, 15, 10];

values.sort();

console.log(values);

这段函数输出结果竟然是:
[ 0, 1, 10, 15, 5 ]

这是怎么回事?

实际上,在sort()函数内部会使用toString()转型,而String比较是通过ASCII,所以,我们如果需要排序的话,还是自己写一个sort()比较好。

var values = [1, 0, 5, 15, 10];

function compare(value1, value2) {

    if (value1 < value2) {

        return -1;

    } else if (value1 > value2) {

        return 1;

    } else {

        return 0;

    }

}

values.sort(compare);

console.log(values);

如果调换一下-1和1就能逆向排序啦。

现在的输出结果:
[ 0, 1, 5, 10, 15 ]

更简单的写法是,在compare()内部使用return value2 - value1;

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
11款新鲜的jQuery插件[附所有demo下载]
Jan 24 Javascript
JavaScript中使用Math.PI圆周率属性的方法
Jun 14 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
Jun 24 Javascript
Bootstrap每天必学之表格
Nov 23 Javascript
Angularjs实现多个页面共享数据的方式
Mar 29 Javascript
iScroll.js 使用方法参考
May 16 Javascript
JavaScript必知必会(九)function 说起 闭包问题
Jun 08 Javascript
JS仿JQuery选择器功能
Mar 08 Javascript
Vue官方推荐AJAX组件axios.js使用方法详解与API
Oct 09 Javascript
如何基于vue-cli3.0构建功能完善的移动端架子
Apr 24 Javascript
简谈创建React Component的几种方式
Jun 15 Javascript
mock.js模拟数据实现前后端分离
Jul 24 Javascript
jQuery中:visible选择器用法实例
Dec 30 #Javascript
JQuery设置时间段下拉选择实例
Dec 30 #Javascript
jQuery中:hidden选择器用法实例
Dec 30 #Javascript
jQuery中:has选择器用法实例
Dec 30 #Javascript
jQuery中:empty选择器用法实例
Dec 30 #Javascript
jQuery中:contains选择器用法实例
Dec 30 #Javascript
解决ueditor jquery javascript 取值问题
Dec 30 #Javascript
You might like
PHP实现服务器状态监控的方法
2014/12/09 PHP
php选择排序法实现数组排序实例分析
2015/02/16 PHP
PHP统一页面编码避免乱码问题
2015/04/09 PHP
docker-compose部署php项目实例详解
2019/07/30 PHP
laravel 执行迁移回滚示例
2019/10/23 PHP
javascript 判断数组是否已包含了某个元素的函数
2010/05/30 Javascript
jQuery获取Select选择的Text和Value(详细汇总)
2013/01/25 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
2013/07/10 Javascript
JavaScript的arguments对象应用示例
2014/09/15 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
谷歌Chrome浏览器扩展程序开发小记
2016/01/06 Javascript
AngularJs Javascript MVC 框架
2016/06/20 Javascript
jQuery移除或禁用html元素点击事件常用方法小结
2017/02/10 Javascript
Vue实现购物车场景下的应用
2017/11/27 Javascript
jQuery事件多次绑定与解绑问题实例分析
2019/02/19 jQuery
python中使用百度音乐搜索的api下载指定歌曲的lrc歌词
2014/07/18 Python
python XlsxWriter模块创建aexcel表格的实例讲解
2018/05/03 Python
python pandas 如何替换某列的一个值
2018/06/09 Python
python实时监控cpu小工具
2018/06/21 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
2018/08/02 Python
详谈Python 窗体(tkinter)表格数据(Treeview)
2018/10/11 Python
python django中8000端口被占用的解决
2019/12/17 Python
Python多线程:主线程等待所有子线程结束代码
2020/04/25 Python
python函数调用,循环,列表复制实例
2020/05/03 Python
韩国休闲女装品牌网站:ANAIS
2016/08/24 全球购物
英国时尚服饰电商:Boohoo
2017/10/12 全球购物
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
咨询公司各岗位职责
2013/12/02 职场文书
医生进修自我鉴定
2014/01/19 职场文书
2014年小班元旦活动方案
2014/02/16 职场文书
公司授权委托书范本
2014/04/03 职场文书
培训讲师岗位职责
2014/04/13 职场文书
海南召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
导师鉴定意见
2015/06/05 职场文书
个人售房合同协议书
2016/03/21 职场文书
oracle表分区的概念及操作
2021/04/24 Oracle