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中字符替换函数String.replace()使用技巧
Aug 14 Javascript
JS获取DropDownList的value值与text值的示例代码
Jan 07 Javascript
js 显示base64编码的二进制流网页图片
Apr 04 Javascript
浅析webapp框架AngularUI的demo
Dec 21 Javascript
JavaScript 异常处理 详解
Feb 06 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
Aug 11 Javascript
js中string和number类型互转换技巧(分享)
Nov 28 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
Dec 02 Javascript
react-router4 嵌套路由的使用方法
Jul 24 Javascript
Vue的Flux框架之Vuex状态管理器
Jul 30 Javascript
最全正则表达式总结:验证QQ号、手机号、Email、中文、邮编、身份证、IP地址等
Aug 16 Javascript
微信小程序自定义tabBar组件开发详解
Sep 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 header函数使用教程
2013/09/05 PHP
php获取qq用户昵称和在线状态(实例分析)
2013/10/27 PHP
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
2014/05/10 PHP
php字符串替换函数substr_replace()用法实例
2015/03/17 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
PHP 类与构造函数解析
2017/02/06 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
JavaScript 利用Cookie记录用户登录信息
2009/12/08 Javascript
js移除事件 js绑定事件实例应用
2012/11/28 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
javascript+canvas实现刮刮卡抽奖效果
2015/07/29 Javascript
javascript中判断json的方法总结
2015/08/27 Javascript
javascript实现不同颜色Tab标签切换效果
2016/04/27 Javascript
jQuery Mobile框架中的表单组件基础使用教程
2016/05/17 Javascript
JS实现全屏的四种写法
2016/12/30 Javascript
微信小程序-滚动消息通知的实例代码
2017/08/03 Javascript
vue.js的手脚架vue-cli项目搭建的步骤
2017/08/30 Javascript
如何进行微信公众号开发的本地调试的方法
2019/06/16 Javascript
关于Node.js中频繁修改代码重启服务器的问题
2020/10/15 Javascript
[03:22]DSPL第一期精彩集锦:酷炫到底!
2014/11/07 DOTA
使用Python判断IP地址合法性的方法实例
2014/03/13 Python
python学习之第三方包安装方法(两种方法)
2015/07/30 Python
python在html中插入简单的代码并加上时间戳的方法
2018/10/16 Python
python银行系统实现源码
2019/10/25 Python
Pytorch to(device)用法
2020/01/08 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
详解CSS3开启硬件加速的使用和坑
2017/08/21 HTML / CSS
德国在线购买葡萄酒网站:Geile Weine
2019/09/24 全球购物
在购买印度民族服饰:Soch
2020/09/15 全球购物
小学关爱留守儿童活动方案
2014/08/25 职场文书
2014银行授权委托书样本
2014/10/04 职场文书
付款委托书范本
2014/10/05 职场文书
勇敢的心观后感
2015/06/09 职场文书
毕业实习证明范本
2015/06/16 职场文书
升职自荐书
2019/05/09 职场文书
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript