页面

2009年3月18日

Js��排序正解

Js��排序正解


�於Jscript的��排序��,�性能上考�,正�的做法��是通� Array �象的 sort 方法�行排序。

�於 sort 方法,Jscript�言�考上是���的:

[code]
sort 方法
返回一�元素已��行了排序的 Array �象。

arrayobj.sort(sortfunction)

��
arrayObj

必��。任意 Array �象。

sortFunction

可��。是用��定元素�序的函�的名�。如果����被省略,那�元素�按照 ASCII 字符�序�行升序排列。

�明
sort 方法� Array �像�行��的排序;在�行�程中�不��建新的 Array �象。

如果� sortfunction ��提供了一�函�,那��函�必�返回下列值之一:

*�值,如果所��的第一���比第二���小。

*零,如果����相等。

*正值,如果第一���比第二���大。

[/code]

演示如下:

Jscript示例程序
[html]
<script>
var data=[]
function sortRule(a,b)
{if(a>b)return 1
if(a==b)return 0
if(a<b)return -1
}

function show()
{getvalue=DataWord.value.split(",")
for(i=0;i<getvalue.length;i++){data[i]=parseInt(getvalue[i])}
data.sort(sortRule)
alert(data.toString())
}
</script>
Data:<input name=DataWord readonly value="82,16,9,95,27,75,42,69,34" size=30>
<p><button onclick=show()>排序</button>
[/html]

没有评论: