js中数组(Array)的排序(sort)注意事项说明


Posted in Javascript onJanuary 24, 2014

直接看代码吧,测试结果也贴在里面了

var arrDemo = new Array();
 arrDemo[0] = 10;
 arrDemo[1] = 50;
 arrDemo[2] = 51;
 arrDemo[3] = 100;
 arrDemo.sort(); //调用sort方法后,数组本身会被改变,即影响原数组
 alert(arrDemo);//10,100,50,51 默认情况下sort方法是按ascii字母顺序排序的,而非我们认为是按数字大小排序
 arrDemo.sort(function(a,b){return a>b?1:-1});//从小到大排序
 alert(arrDemo);//10,50,51,100
 arrDemo.sort(function(a,b){return a<b?1:-1});//从大到小排序
 alert(arrDemo);//100,51,50,10

结论:

1.数组调用sort方法后,会影响本身(而非生成新数组)

2.sort()方法默认是按字符来排序的,所以在对数字型数组排序时,不可想当然的以为会按数字大小排序!

3.要改变默认的sort行为(即按字符排序),可以自行指定排序规则函数(如本例所示)

Javascript 相关文章推荐
JS的数组的扩展实例代码
Jul 09 Javascript
javascript一些不错的函数脚本代码
Sep 10 Javascript
javascript封装的sqlite操作类实例
Jul 17 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
Aug 15 Javascript
基于vue+ bootstrap实现图片上传图片展示功能
May 17 Javascript
node.js通过axios实现网络请求的方法
Mar 05 Javascript
Angular使用cli生成自定义文件、组件的方法
Sep 04 Javascript
微信小程序使用swiper组件实现层叠轮播图
Nov 04 Javascript
微信小程序实现文字跑马灯
May 26 Javascript
vue.js基于v-for实现批量渲染 Json数组对象列表数据示例
Aug 03 Javascript
解决ele ui 表格表头太长问题的实现
Nov 13 Javascript
解决vue项目中出现Invalid Host header的问题
Nov 17 Javascript
Array 重排序方法和操作方法的简单实例
Jan 24 #Javascript
JS数组去重与取重的示例代码
Jan 24 #Javascript
关于js数组去重的问题小结
Jan 24 #Javascript
js数组去重的常用方法总结
Jan 24 #Javascript
JQuery的$和其它JS发生冲突的快速解决方法
Jan 24 #Javascript
js判断60秒以及倒计时示例代码
Jan 24 #Javascript
innerText 使用示例
Jan 23 #Javascript
You might like
PHP实现的XXTEA加密解密算法示例
2018/08/28 PHP
javascript 用记忆函数快速计算递归函数
2010/03/15 Javascript
javascript 获取页面的高度及滚动条的位置的代码
2010/05/06 Javascript
javascript学习笔记(五)正则表达式
2011/04/08 Javascript
jQuery1.6 正式版发布并提供下载
2011/05/05 Javascript
一个JS函数搞定网页标题(title)闪动效果
2014/05/13 Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
2014/11/02 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
JS实现统计复选框选中个数并提示确定与取消的方法
2015/07/01 Javascript
javascript正则表达式总结
2016/02/29 Javascript
AngularJS入门教程之XHR和依赖注入详解
2016/08/18 Javascript
bootstrap侧边栏圆点导航
2017/01/11 Javascript
nodejs超出最大的调用栈错误问题
2017/12/27 NodeJs
基于Swiper实现移动端页面图片轮播效果
2017/12/28 Javascript
vue自定义指令实现仅支持输入数字和浮点型的示例
2019/10/30 Javascript
原生js实现文件上传、下载、封装等实例方法
2020/01/05 Javascript
Python中编写ORM框架的入门指引
2015/04/29 Python
使用pdb模块调试Python程序实例
2015/06/02 Python
Python实现对象转换为xml的方法示例
2017/06/08 Python
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
Django实战之用户认证(初始配置)
2018/07/16 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
Django的models模型的具体使用
2019/07/15 Python
Django应用程序入口WSGIHandler源码解析
2019/08/05 Python
python如何通过pyqt5实现进度条
2020/01/20 Python
Windows+Anaconda3+PyTorch+PyCharm的安装教程图文详解
2020/04/03 Python
2020版Python学习路线图(附学习资料)
2020/09/15 Python
JAVA程序员自荐书
2014/01/30 职场文书
大学生通用个人的自我评价
2014/02/10 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
班主任经验交流材料
2014/12/16 职场文书
2015大学生入党个人自传
2015/06/26 职场文书
2016年公司新年寄语
2015/08/17 职场文书
MySQL去除重叠时间求时间差和的实现
2021/08/23 MySQL
Python中异常处理用法
2021/11/27 Python