js数组Array sort方法使用深入分析


Posted in Javascript onFebruary 21, 2013

javascript 中 Array.sort()方法是用来对数组项进行排序的 ,默认情况下是进行升序排列,实例代码如下:

var arrA = [6,2,4,3,5,1]; 
arrA.sort(); 
document.writeln(arrA); 
//结果是:1,2,3,4,5,6

sort() 方法可以接受一个 方法为参数 ,这个方法有两个参数。分别代表每次排序比较时的两个数组项。
sort()排序时每次比较两个数组项都回执行这个参数,并把两个比较的数组项作为参数传递给这个函数。当函数返回值为1的时候就交换两个数组项的顺序,否则就不交换。
实例如下:

var arrA = [6,2,4,3,5,1]; 
/**//*arrA.sort(); 
document.writeln(arrA); 
*/ 
function desc(x,y) 
...{ 
if (x > y) 
return -1; 
if (x < y) 
return 1; 
} 
function asc(x,y) 
...{ 
if (x > y) 
return 1; 
if (x < y) 
return -1; 
} 
arrA.sort(desc); // sort by desc 
document.writeln(arrA); 
document.writeln("<br>"); 
arrA.sort(asc); //sort by asc 
document.writeln(arrA); 
//输出结果: 
6,5,4,3,2,1 
1,2,3,4,5,6

另外,可以直接把一个无名函数直接放到sort()方法的调用中。如下的例子是将奇数排在前面,偶数排在后面,例子如下:

var arrA = [6,2,4,3,5,1]; 
arrA.sort( function(x, y) ...{ 
if (x % 2 ==0) 
return 11; 
if (x % 2 !=0) 
return -1; 
} 
); 
document.writeln(arrA); 
//输出:1,5,3,4,6,2

这篇关于js数组Array sort的方法就介绍到这了,需要的朋友可以参考一下。

Javascript 相关文章推荐
JS JavaScript获取Url参数,src属性参数
Mar 09 Javascript
新闻内页-JS分页
Jun 07 Javascript
JQuery的自定义事件代码,触发,绑定简单实例
Aug 01 Javascript
jQuery ajax dataType值为text json探索分享
Sep 23 Javascript
jquery文本框中的事件应用以输入邮箱为例
May 06 Javascript
javascript进行四舍五入方法汇总
Dec 16 Javascript
JavaScript获取表单内所有元素值的方法
Apr 02 Javascript
解决vue 项目引入字体图标报错、不显示等问题
Sep 01 Javascript
浅谈Vue.js中如何实现自定义下拉菜单指令
Jan 06 Javascript
详解vue中axios的使用与封装
Mar 20 Javascript
微信小程序 Storage更新详解
Jul 16 Javascript
微信小程序与公众号卡券/会员打通的问题
Jul 25 Javascript
js自定义方法通过隐藏iframe实现文件下载
Feb 21 #Javascript
jquery实现每个数字上都带进度条的幻灯片
Feb 20 #Javascript
javascript通过class来获取元素实现代码
Feb 20 #Javascript
javascript自适应宽度的瀑布流实现思路
Feb 20 #Javascript
Raphael带文本标签可拖动的图形实现代码
Feb 20 #Javascript
IE关闭时判断及AJAX注销案例学习
Feb 18 #Javascript
JS刷新框架外页面七种实现代码
Feb 18 #Javascript
You might like
PHP新手上路(十三)
2006/10/09 PHP
discuz论坛 用户登录 后台程序代码
2008/11/27 PHP
解析curl提交GET,POST,Cookie的简单方法
2013/06/29 PHP
完善CodeIgniter在IDE中代码提示功能的方法
2014/07/19 PHP
PHP中header函数的用法及其注意事项详解
2016/06/13 PHP
PHP 常用时间函数资料整理
2016/10/22 PHP
PHP编程快速实现数组去重的方法详解
2017/07/22 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
2020/02/21 PHP
bgsound 背景音乐 的一些常用方法及特殊用法小结
2010/05/11 Javascript
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
javascript闭包的高级使用方法实例
2013/07/04 Javascript
Js表格万条数据瞬间加载实现代码
2014/02/20 Javascript
Javascript MVC框架Backbone.js详解
2014/09/18 Javascript
使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
2015/08/21 NodeJs
jQuery实现点击弹出背景变暗遮罩效果实例代码
2016/06/24 Javascript
AngularJS实现ajax请求的方法
2016/11/22 Javascript
Vue.js -- 过滤器使用总结
2017/02/18 Javascript
js鼠标跟随运动效果
2017/03/11 Javascript
详谈commonjs模块与es6模块的区别
2017/10/18 Javascript
修改UA在PC中访问只能在微信中打开的链接方法
2017/11/27 Javascript
解决vue 路由变化页面数据不刷新的问题
2018/03/13 Javascript
Express结合Webpack的全栈自动刷新
2019/05/23 Javascript
如何利用vue实现波谱拟合详解
2020/11/05 Javascript
[02:43]2014DOTA2国际邀请赛 官方Alliance战队纪录片
2014/07/14 DOTA
在Python中使用模块的教程
2015/04/27 Python
基于python的socket实现单机五子棋到双人对战
2020/03/24 Python
python 和c++实现旋转矩阵到欧拉角的变换方式
2019/12/04 Python
PyQT5 实现快捷键复制表格数据的方法示例
2020/06/19 Python
通过案例解析python鸭子类型相关原理
2020/10/10 Python
综艺节目策划方案
2014/06/13 职场文书
初中学校对照检查材料
2014/08/19 职场文书
作风建设年活动总结
2014/08/27 职场文书
2015元旦主持词开场白和结束语
2014/12/14 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
安娜卡列尼娜观后感
2015/06/11 职场文书
2019暑假学生安全口号
2019/06/27 职场文书