Js中sort()方法的用法


Posted in Javascript onNovember 04, 2006

返回一个元素已经进行了排序的 Array 对象。

arrayobj.sort(sortfunction) 
参数
arrayObj 
必选项。任意 Array 对象。 
sortFunction 
可选项。是用来确定元素顺序的函数的名称。如果这个参数被省略,
那么元素将按照 ASCII 字符顺序进行升序排列。 
说明
sort 方法将 Array 对象进行适当的排序;
在执行过程中并不会创建新的 Array 对象。

如果为 sortfunction 参数提供了一个函数,那么该函数必须返回下列值之一: 

负值,如果所传递的第一个参数比第二个参数小。 
零,如果两个参数相等。 
正值,如果第一个参数比第二个参数大。 
Demo1(默认按字母排序):

<script language="javascript">  
  var nameArr = new Array("douguoqiang","hedan","redhacker","panliu888","maxuan","xuejianping","lanse","zhangsan","lisi","wangwu");  
  nameArr.sort();  
  for (var i = 0; i < nameArr.length; i++) {  
    document.writeln(nameArr[i]);  
  }  
</script> 

结果:douguoqiang hedan lanse lisi maxuan panliu888 redhacker wangwu xuejianping zhangsan 

Demo(数字排序,sort(prama)方法带参数):

<script>  
  var numArr = new Array(12,23,1,4,23,34,2,5);  
  numArr.sort(function compare(a,b){return a-b;});  
  for (var i = 0; i<numArr.length; i++) {  
    document.write(numArr[i] +"<br>");  
  }  
</script> 

结果:
1
2
4
5
12
23
23
34

Demo3(Demo3反排序):

<script>  
  var numArr = new Array(12,23,1,4,23,34,2,5);  
  numArr.sort(function compare(a,b){return b-a;});  
  for (var i = 0; i<numArr.length; i++) {  
    document.write(numArr[i] +"<br>");  
  }  
</script> 

结果:
34
23
23
12
5
4
2
1

Demo4(Demo3的第二种写法):

<script>  
  var numArr = new Array(12,23,1,4,23,34,2,5);  
  numArr.sort(new Function("a","b","return a-b;"));  
  for (var i = 0; i<numArr.length; i++) {  
    document.write(numArr[i] +"<br>");  
  }  
</script> 

结果:
1
2
4
5
12
23
23
34

Demo5(Demo3的第三种写法):

<script>  
  function compare(a,b) {  
    return a-b;  
  }  
  var numArr = new Array(12,23,1,4,23,34,2,5);  
  numArr.sort(compare);  
  for (var i = 0; i<numArr.length; i++) {  
    document.write(numArr[i] +"<br>");  
  }  
</script> 

结果:
1
2
4
5
12
23
23
34

Demo6(Demo3的第四种写法):

<script>  
  var compare = function(a,b) {  
    return a-b;  
  }  
  var numArr = new Array(12,23,1,4,23,34,2,5);  
  numArr.sort(compare);  
  for (var i = 0; i<numArr.length; i++) {  
    document.write(numArr[i] +"<br>");  
  }  
</script> 

结果:
1
2
4
5
12
23
23
34
Javascript 相关文章推荐
动态修改DOM 里面的 id 属性的弊端分析
Sep 03 Javascript
js获取本机的外网/广域网ip地址完整源码
Aug 12 Javascript
javascript数组克隆简单实现方法
Dec 16 Javascript
Node.js实现JS文件合并小工具
Feb 02 Javascript
Bootstrap布局组件教程之Bootstrap下拉菜单
Jun 12 Javascript
使用JavaScript触发过渡效果的方法
Jan 19 Javascript
JS实现图片放大镜插件详解
Nov 06 Javascript
基于Vue开发数字输入框组件
Dec 19 Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 Javascript
vue.js路由mode配置之去掉url上默认的#方法
Nov 01 Javascript
vue Treeselect下拉树只能选择第N级元素实现代码
Aug 31 Javascript
使用JavaScript实现贪吃蛇游戏
Sep 29 Javascript
取得传值的函数
Oct 27 #Javascript
使javascript也能包含文件
Oct 26 #Javascript
利用XMLHTTP传递参数在另一页面执行并刷新本页
Oct 26 #Javascript
如何用javascript控制上传文件的大小
Oct 26 #Javascript
动态改变textbox的宽高的js
Oct 26 #Javascript
js传值 判断
Oct 26 #Javascript
点击广告后才能获得下载地址
Oct 26 #Javascript
You might like
一个基于PDO的数据库操作类
2011/03/24 PHP
利用PHP实现智能文件类型检测的实现代码
2011/08/02 PHP
浅析PHP程序防止ddos,dns,集群服务器攻击的解决办法
2013/06/18 PHP
nginx+thinkphp下解决不支持pathinfo模式
2015/07/01 PHP
PHP实现linux命令tail -f
2016/02/22 PHP
php+js实现百度地图多点标注的方法
2016/11/30 PHP
PHP如何获取当前主机、域名、网址、路径、端口等参数
2017/06/09 PHP
根据出生日期自动取得星座的js代码
2010/07/20 Javascript
JS仿flash上传头像效果实现代码
2011/07/18 Javascript
跨域请求之jQuery的ajax jsonp的使用解惑
2011/10/09 Javascript
ajax请求乱码的解决方法(中文乱码)
2014/04/10 Javascript
全面兼容的javascript时间格式化函数(比较实用)
2014/05/14 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
2015/04/16 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
JavaScript创建对象_动力节点Java学院整理
2017/06/27 Javascript
在iframe中使bootstrap的模态框在父页面弹出问题
2017/08/07 Javascript
解决vue.js this.$router.push无效的问题
2018/09/03 Javascript
微信小程序wx.navigateTo方法里的events参数使用详情及场景
2020/01/07 Javascript
react 生命周期实例分析
2020/05/18 Javascript
[01:41]DOTA2超级联赛专访YYF 称一辈子难忘TI2
2013/05/28 DOTA
[32:56]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第二场 12.11
2020/12/16 DOTA
pyqt和pyside开发图形化界面
2014/01/22 Python
Python3实现获取图片文字里中文的方法分析
2018/12/13 Python
深入解析python中的实例方法、类方法和静态方法
2019/03/11 Python
把JSON数据格式转换为Python的类对象方法详解(两种方法)
2019/06/04 Python
python tkinter窗口最大化的实现
2019/07/15 Python
TensorFlow2.0矩阵与向量的加减乘实例
2020/02/07 Python
Pygame的程序开始示例代码
2020/05/07 Python
手把手教你用Django执行原生SQL的方法
2021/02/18 Python
澳大利亚领先的宠物用品商店:VetSupply
2017/09/08 全球购物
澳大利亚冒险体验:Adrenaline(跳伞、V8赛车、热气球等)
2017/09/18 全球购物
如何获得EntityManager
2014/02/09 面试题
千元咖啡店的创业计划书范文
2013/12/29 职场文书
列车长先进事迹材料
2014/01/25 职场文书
超市重阳节活动方案
2014/02/10 职场文书
《骆驼和羊》教学反思
2014/02/27 职场文书