欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中數(shù)組的排序、亂序和搜索實(shí)現(xiàn)代碼

 更新時(shí)間:2011年11月30日 23:20:50   作者:  
JavaScript中實(shí)現(xiàn)數(shù)組的排序、亂序和搜索,其實(shí)所有這些功能,用一個(gè)sort()就可以完成了
1. 排序:
默認(rèn)的sort()按字符編碼排序的:
復(fù)制代碼 代碼如下:

<script type="text/javascript">
<!--
var testArray=[3,324,5345,6546,134,5654,665];
testArray.sort();
alert(testArray);
//-->
</script>

現(xiàn)在要讓它按照數(shù)值大小排序:
復(fù)制代碼 代碼如下:

<script type="text/javascript">
<!--
var testArray=[3,324,5345,6546,134,5654,665];
testArray.sort(function(a,b){return a-b;});
alert(testArray);
//-->
</script>

只要傳遞一個(gè)比較函數(shù)給sort就可以了,如果比較函數(shù)的值小于0,則表示a必須出現(xiàn)在b前面,否則在b后面。

2. 亂序:
讓比較函數(shù)隨機(jī)傳回-1或1就可以了:
復(fù)制代碼 代碼如下:

<script type="text/javascript">
<!--
var testArray=[1,2,3,4,5,6,7,8,9,10,22,33,55,77,88,99];
testArray.sort(function(){return Math.random()>0.5?-1:1;});
alert(testArray);
//-->
</script>

3. 搜索:

用sort()來玩搜索還蠻新鮮的,呵呵,看看是怎么玩的吧。
我現(xiàn)在要把數(shù)組里含有字母'a'的元素全部找出來,如果沒有sort(),似乎只能用遍歷了,遍歷的效率…那個(gè)叫恐怖?。?!具體做法如下:
復(fù)制代碼 代碼如下:

<script type="text/javascript">
<!--
var testArray=['df', 'rtr', 'wy', 'dafd', 'dfs', 'wefa', 'tyr', 'rty', 'rty', 'ryt', 'afds', 'wer', 'te'];
testArray.sort(function(a,b){return a.indexOf('a')==-1?1:-1;});
alert(testArray);
//-->
</script>

這樣就把數(shù)組中含有字母'a'的元素全部放到數(shù)組前面啦,再經(jīng)過一些簡(jiǎn)單的處理,就可以輸出搜索結(jié)果了。
以上是我總結(jié)的三種在javascript中用sort()操作數(shù)組的方法,如果你有興趣,你會(huì)發(fā)現(xiàn)sort()還有好多妙用呢……

相關(guān)文章

最新評(píng)論