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 巧妙去除数组中的重复项
Jan 25 Javascript
用js实现的自定义的对话框的实现代码
Mar 21 Javascript
JavaScript 更严格的相等 [译]
Sep 20 Javascript
兼容主流浏览器的JS复制内容到剪贴板
Dec 12 Javascript
js实现绿白相间竖向网页百叶窗动画切换效果
Mar 02 Javascript
JS中使用 after 伪类清除浮动实例
Mar 01 Javascript
浅谈Vuejs中nextTick()异步更新队列源码解析
Dec 31 Javascript
JS实现的DOM插入节点操作示例
Apr 04 Javascript
vue 移动端适配方案详解
Nov 15 Javascript
基于node.js实现爬虫的讲解
Feb 18 Javascript
通过vue.extend实现消息提示弹框的方法记录
Jan 07 Vue.js
WebRTC记录音视频流(web技术分享)
Feb 24 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速度全攻略
2006/10/09 PHP
PHP错误提示的关闭方法详解
2013/06/23 PHP
php和redis实现秒杀活动的流程
2019/07/17 PHP
JavaScript函数、方法、对象代码
2008/10/29 Javascript
jquery组件使用中遇到的问题整理及解决
2014/02/21 Javascript
JavaScript语言精粹经典实例(整理篇)
2016/06/07 Javascript
避免jQuery名字冲突 noConflict()方法
2016/07/30 Javascript
浅谈移动端之js touch事件 手势滑动事件
2016/11/07 Javascript
Makefile/cmake/node-gyp中区分判断不同平台的方法
2018/12/18 Javascript
JS获取本地地址及天气的方法实例小结
2019/05/10 Javascript
小程序卡片切换效果组件wxCardSwiper的实现
2020/02/13 Javascript
vue+ts下对axios的封装实现
2020/02/18 Javascript
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
基于Vue+Webpack拆分路由文件实现管理
2020/11/16 Javascript
three.js 实现露珠滴落动画效果的示例代码
2021/03/01 Javascript
[06:37]2014DOTA2国际邀请赛 昔日王者渴望重回巅峰
2014/07/12 DOTA
python实现每次处理一个字符的三种方法
2014/10/09 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
2018/04/18 Python
python中的文件打开与关闭操作命令介绍
2018/04/26 Python
python图像和办公文档处理总结
2019/05/28 Python
Python Gitlab Api 使用方法
2019/08/28 Python
python编写猜数字小游戏
2019/10/06 Python
Python笔记之代理模式
2019/11/20 Python
Django之全局使用request.user.username的实例详解
2020/05/14 Python
django 解决自定义序列化返回处理数据为null的问题
2020/05/20 Python
墨西哥运动服饰和鞋网上商店:Netshoes墨西哥
2016/07/28 全球购物
美国专业汽车音响和移动电子产品零售商:Car Toys
2019/05/13 全球购物
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
了解AppleTalk协议吗
2014/04/01 面试题
中式餐厅创业计划书范文
2014/01/23 职场文书
小学运动会入场式解说词
2014/02/18 职场文书
党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
装修公司管理制度
2015/08/05 职场文书
JUnit5常用注解的使用
2021/07/02 Java/Android
2021年国漫热度排行前十,完美世界上榜,第四是美国动画作品
2022/03/18 国漫
MySQL派生表联表查询实战过程
2022/03/20 MySQL