js中数组(Array)的排序(sort)注意事项
直接看代码吧,测试结果也贴在里面了
复制代码
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行为(即按字符排序),可以自行指定排序规则函数(如本例所示)
js Array sort 排序
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
js排序——sort()排序用法
语法:array.sort(fun);参数fun可选。规定排序顺序。必须是函数。
javascript 排序算法 开发语言 数组 升序 -
Node.js:Array.prototype.sort数组排序的使用
注意:sort是对原数组进行排序操作,会改变原数组。1.2、desc 从大到小排序。1.1、asc 从小到大排序。
node.js javascript 前端 数组 对象数组 -
spring cloud 网关服务繁忙
看完之后有彩蛋欧网关的作用和使用场景 (画图) 1)什么是网关唯一对外的入口,介于客户端和服务器端之间的中间层,处理非业务功能 提供路由请求、鉴权、监控、缓存、限流等功能 统一接入 &n
spring cloud 网关服务繁忙 spring cloud Zuul 限流 ide