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 相关文章推荐
javascript获得CheckBoxList选中的数量
Oct 27 Javascript
菜鸟javascript基础资料整理3 正则
Dec 06 Javascript
jquery.bgiframe.js在IE9下提示INVALID_CHARACTER_ERR错误
Jan 11 Javascript
JS实现文字掉落效果的方法
May 06 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
Jun 05 Javascript
AngularJS中如何使用$http对MongoLab数据表进行增删改查
Jan 23 Javascript
原生JS实现左右箭头选择日期实例代码
Mar 14 Javascript
js保留两位小数方法总结
Jan 31 Javascript
Vue中的组件及路由使用实例代码详解
May 22 Javascript
对layui初始化列表的CheckBox属性详解
Sep 13 Javascript
Layer UI表格列日期格式化及取消自动填充日期的实现方法
May 10 Javascript
微信小程序单选框自定义赋值
May 26 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
虹吸壶是谁发明的?煮出来的咖啡好喝吗
2021/03/04 冲泡冲煮
php中文件上传的安全问题
2006/10/09 PHP
php面向对象全攻略 (七) 继承性
2009/09/30 PHP
将php数组输出html表格的方法
2014/02/24 PHP
php使用curl打开https网站的方法
2015/06/17 PHP
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
Javascript中匿名函数的多种调用方式总结
2013/12/06 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
2014/04/29 Javascript
js,jquery滚动/跳转页面到指定位置的实现思路
2014/06/03 Javascript
javascript实现保留两位小数的多种方法
2015/12/18 Javascript
js处理层级数据结构的方法小结
2017/01/17 Javascript
jQuery模拟淘宝购物车功能
2017/02/27 Javascript
完美实现js选项卡切换效果(二)
2017/03/08 Javascript
javascript回调函数的概念理解与用法分析
2017/05/27 Javascript
理解Angular的providers给Http添加默认headers
2017/07/04 Javascript
JavaScript实现京东放大镜效果
2019/12/03 Javascript
jquery实现简单自动轮播图效果
2020/07/29 jQuery
vue-model实现简易计算器
2020/08/17 Javascript
python多重继承实例
2014/10/11 Python
python pandas dataframe 按列或者按行合并的方法
2018/04/12 Python
python设计微型小说网站(基于Django+Bootstrap框架)
2019/07/08 Python
解决Pycharm中恢复被exclude的项目问题(pycharm source root)
2020/02/14 Python
如何用 Python 制作 GitHub 消息助手
2021/02/20 Python
Canvas中设置width与height的问题浅析
2018/11/01 HTML / CSS
如何提高SQL Server的安全性
2016/07/25 面试题
年度考核评语
2014/01/19 职场文书
趣味游戏活动方案
2014/02/07 职场文书
小学模范班主任事迹材料
2014/05/13 职场文书
党员个人整改方案及措施
2014/10/25 职场文书
关于群众路线的心得体会
2014/11/05 职场文书
2014年设备管理工作总结
2014/11/26 职场文书
工作试用期自我评价
2015/03/10 职场文书
公司保密管理制度
2015/08/04 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python
详细总结Python常见的安全问题
2021/05/21 Python
HTML5之高度塌陷问题的解决
2022/06/01 HTML / CSS