码迷,mamicode.com
首页 > 编程语言 > 详细

javascript Array对象sort()方法

时间:2015-01-14 09:49:04      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:

sort() 方法用于对数组的元素进行排序。

语法
arrayObject.sort(sortby)
sortby 可选。规定排序顺序。必须是函数。
sort()方法返回对数组的引用。请注意,数组在原数组上进行排序,不生成副本。
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。
要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。
比较函数应该具有两个参数 a 和 b,其返回值如下:
?若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
?若 a 等于 b,则返回 0。
?若 a 大于 b,则返回一个大于 0 的值。

例子 1
创建一个数组,并按字母顺序进行排序:

<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
document.write(arr.sort())
</script>

输出:
George,John,Thomas,James,Adrew,Martin
Adrew,George,James,John,Martin,Thomas

例子 2
创建一个数组,并按字母顺序和按数字大小排序进行排序:

<script type="text/javascript">

function sortNumber(a,b)
{
 return a - b
}
var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
document.write(arr + "<br />")
document.write(arr.sort()+ "<br />")
document.write(arr.sort(sortNumber))
</script>

输出:
10,5,40,25,1000,1
1,10,1000,25,40,5
1,5,10,25,40,1000

 

javascript Array对象sort()方法

标签:

原文地址:http://blog.csdn.net/helloboat/article/details/42705421

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!