js 自带的sort() 方法全面了解


Posted in Javascript onAugust 16, 2016

1. 方法概述

Array的sort()方法默认把所有元素先转换为String再根据Unicode排序,

sort()会改变原数组,并返回改变(排序)后的数组 。

2. 例子

2.1

如果没有提供自定义的方法, 数组元素会被转换成字符串,并返回字符串在Unicode编码下的顺序比较结果

var fruit = ['cherries', 'apples', 'bananas'];
fruit.sort(); // ['apples', 'bananas', 'cherries']

var scores = [1, 10, 2, 21]; 
scores.sort(); // [1, 10, 2, 21]
// Watch out that 10 comes before 2,
// because '10' comes before '2' in Unicode code point order.

var things = ['word', 'Word', '1 Word', '2 Words'];
things.sort(); // ['1 Word', '2 Words', 'Word', 'word']
// In Unicode, numbers come before upper case letters,
// which come before lower case letters.

2.2 利用map来排序

// the array to be sorted
var list = ['Delta', 'alpha', 'CHARLIE', 'bravo'];

// temporary array holds objects with position and sort-value
var mapped = list.map(function(el, i) {
 return { index: i, value: el.toLowerCase() };
})

// sorting the mapped array containing the reduced values
mapped.sort(function(a, b) {
 return +(a.value > b.value) || +(a.value === b.value) - 1;
});

// container for the resulting order
var result = mapped.map(function(el){
 return list[el.index];
});

alert(result);

参考 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

以上这篇js 自带的sort() 方法全面了解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
比较简单的一个符合web标准的JS调用flash方法
Nov 29 Javascript
Javascript的匿名函数小结
Dec 31 Javascript
JQuery优缺点分析说明
Apr 10 Javascript
jquery图片轮播插件仿支付宝2013版全屏图片幻灯片
Apr 03 Javascript
jQuery计算文本框字数及限制文本框字数的方法
Mar 01 Javascript
微信小程序  TLS 版本必须大于等于1.2问题解决
Feb 22 Javascript
使用koa2创建web项目的方法步骤
Mar 12 Javascript
轻松学习JavaScript函数中的 Rest 参数
May 30 Javascript
H5实现手机拍照和选择上传功能
Dec 18 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
Apr 01 jQuery
js实现微信聊天效果
Aug 09 Javascript
关于vue属性使用和不使用冒号的区别说明
Oct 22 Javascript
JavaScript实战之菜单特效
Aug 16 #Javascript
深入理解js generator数据类型
Aug 16 #Javascript
js 创建对象 经典模式全面了解
Aug 16 #Javascript
js 上传文件预览的简单实例
Aug 16 #Javascript
js removeChild 方法深入理解
Aug 16 #Javascript
关于javascript中限定时间内防止按钮重复点击的思路详解
Aug 16 #Javascript
总结Node.js中的一些错误类型
Aug 15 #Javascript
You might like
ThinkPHP自动验证失败的解决方法
2011/06/09 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
用js判断浏览器是否是IE的比较好的办法
2007/05/08 Javascript
javascript vvorld 在线加密破解方法
2008/11/13 Javascript
JavaScript 原型与继承说明
2010/06/09 Javascript
js TextArea的选中区域处理
2010/12/28 Javascript
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
理解AngularJs指令
2015/12/10 Javascript
jsp 网站引入外部css或者js失效问题解决
2016/10/31 Javascript
JS获取多维数组中相同键的值实现方法示例
2017/01/06 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
2017/04/17 Javascript
Mongoose实现虚拟字段查询的方法详解
2017/08/15 Javascript
VueJs组件prop验证简单介绍
2017/09/12 Javascript
基于vue-cli创建的项目的目录结构及说明介绍
2017/11/23 Javascript
layer.js open 隐藏滚动条的例子
2019/09/05 Javascript
Java Web开发过程中登陆模块的验证码的实现方式总结
2016/05/25 Python
删除DataFrame中值全为NaN或者包含有NaN的列或行方法
2018/11/06 Python
Python爬虫抓取技术的一些经验
2019/07/12 Python
Tornado实现多进程/多线程的HTTP服务详解
2019/07/25 Python
浅谈pytorch torch.backends.cudnn设置作用
2020/02/20 Python
Python创建简单的神经网络实例讲解
2021/01/04 Python
matplotlib之属性组合包(cycler)的使用
2021/02/24 Python
CSS3制作皮卡丘动画壁纸的示例
2020/11/02 HTML / CSS
选购世界上最好的美妆品:Cult Beauty
2017/11/03 全球购物
Mankind美国/加拿大:英国领先的男士美容护发用品公司
2018/12/05 全球购物
观看《永远的雷锋》心得体会
2014/03/12 职场文书
银行青年文明号事迹材料
2014/05/31 职场文书
本科毕业生应聘自荐信范文
2014/06/26 职场文书
植物生产学专业求职信
2014/08/08 职场文书
医学检验专业自荐信
2014/09/18 职场文书
2014年党的群众路线教育实践活动整改措施(个人版)
2014/09/25 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
2016参观监狱警示教育活动心得体会
2016/01/15 职场文书
《祁黄羊》教学反思
2016/02/20 职场文书
《海上日出》教学反思
2016/02/23 职场文书