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 相关文章推荐
jQuery实现form表单reset按钮重置清空表单功能
Dec 18 Javascript
javascript修改表格背景色实例代码分享
Dec 10 Javascript
jquery实现不同大小浏览器使用不同的css样式表的方法
Apr 02 Javascript
高性能JavaScript DOM编程(1)
Aug 11 Javascript
jquery实现点击向下展开菜单项(伸缩导航)效果
Aug 22 Javascript
详解AngularJS过滤器的使用
Mar 11 Javascript
基于BootStrap Metronic开发框架经验小结【四】Bootstrap图标的提取和利用
May 12 Javascript
微信小程序实现留言功能
Oct 31 Javascript
jQuery实现全选、反选和不选功能的方法详解
Dec 04 jQuery
js实现时间日期校验
May 26 Javascript
vue+AI智能机器人回复功能实现
Jul 16 Javascript
vue配置多代理服务接口地址操作
Sep 08 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
使用Xdebug调试和优化PHP程序之[1]
2007/04/17 PHP
解析PHPExcel使用的常用说明以及把PHPExcel整合进CI框架的介绍
2013/06/24 PHP
PHP面向对象之后期静态绑定功能介绍
2015/05/18 PHP
php中define用法实例
2015/07/30 PHP
javascript 实现简单的table排序及table操作练习
2012/12/28 Javascript
30分钟就入门的正则表达式基础教程
2013/02/25 Javascript
元素未显示设置width/height时IE中使用currentStyle获取为auto
2014/05/04 Javascript
JavaScript中判断整数的多种方法总结
2014/11/08 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
2017/02/10 Javascript
JS和JQuery实现雪花飘落效果
2017/11/30 jQuery
vue.js实现只弹一次弹框
2018/01/29 Javascript
RequireJS用法简单示例
2018/08/20 Javascript
js实现简单的倒计时
2021/01/28 Javascript
[01:10:49]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
matplotlib绘图实例演示标记路径
2018/01/23 Python
目前最全的python的就业方向
2018/06/05 Python
Python批量修改图片分辨率的实例代码
2019/07/04 Python
Python-copy()与deepcopy()区别详解
2019/07/12 Python
用Python爬取QQ音乐评论并制成词云图的实例
2019/08/24 Python
python简单的三元一次方程求解实例
2020/04/02 Python
解决 jupyter notebook 回车换两行问题
2020/04/15 Python
Python如何自动获取目标网站最新通知
2020/06/18 Python
英国最大的汽车交易网站:Auto Trader UK
2016/09/23 全球购物
德国鞋子网上商店:Omoda.de
2017/03/31 全球购物
荷兰本土平价百货:HEMA
2017/10/23 全球购物
Trench London官方网站:高级风衣和意大利皮夹克
2020/07/11 全球购物
电子商务应届生自我鉴定
2014/01/13 职场文书
《再别康桥》教学反思
2014/02/12 职场文书
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
2015年全民创业工作总结
2015/07/23 职场文书
校园广播稿范文
2015/08/19 职场文书
宪法宣传标语100条
2019/10/15 职场文书
Python opencv缺陷检测的实现及问题解决
2021/04/24 Python
再也不用花钱买漫画!Python爬取某漫画的脚本及源码
2021/06/09 Python