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

javascript sort()對數(shù)組中的元素進(jìn)行排序詳解

 更新時(shí)間:2019年10月13日 15:40:23   作者:runde  
在本篇文章里小編給大家整理是一篇關(guān)于javascript sort()對數(shù)組中的元素進(jìn)行排序的相關(guān)知識(shí)點(diǎn)內(nèi)容,需要的朋友們學(xué)習(xí)下。

javascript sort()可以對數(shù)組中的元素進(jìn)行排序,

語法格式:arrayObject.sort(sortby)

arrayObject是數(shù)組對象,sortby為可選項(xiàng),用來確定元素順序的函數(shù)的名稱,如果這個(gè)參數(shù)被省略,那么元素將按照ASCII字符順序進(jìn)行升序排列。

在沒有使用比較函數(shù)進(jìn)行排序時(shí),sort方法是按字符的ASCII值進(jìn)行排序的,先從第一個(gè)字符比較,如果第一個(gè)字符相等,再比較第二個(gè)字符,以此類推。

對于數(shù)值型數(shù)據(jù),如果按照字符比較,得到的結(jié)果可能并不是我們想要的,因此需要借助比較函數(shù)。比較函數(shù)有兩個(gè)參數(shù),分別代表每次排序時(shí)的兩個(gè)數(shù)組項(xiàng)。sort()排序時(shí)每次比較兩個(gè)數(shù)組項(xiàng)都會(huì)執(zhí)行這個(gè)參數(shù),并把兩個(gè)比較的數(shù)組項(xiàng)做為參數(shù)傳遞給這個(gè)函數(shù)。當(dāng)函數(shù)返回值大于0時(shí)就交換兩個(gè)數(shù)組的順序,否則就不交換,即函數(shù)返回值小于0,表示升序排列,函數(shù)返回值大于0,表示降序排列。

<!DOCTYPE html>
<html>
<head>
  <title>對數(shù)組中的元素進(jìn)行排序</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <script type="text/javascript">
    var x = new Array(1,20,8,12,6,7);  //創(chuàng)建數(shù)組
    document.write("排序前數(shù)組:"+x.join(",")+"<p>"); //輸出數(shù)組元素
    x.sort();  //按字符升序排列數(shù)組
    document.write("沒有使用比較函數(shù)排序后數(shù)組:"+x.join(",")+"<p>");   //輸出排序后數(shù)組
    x.sort(asc);    //有比較函數(shù)的升序排列
    /*升序比較函數(shù)*/
    function asc(a,b){
      return a-b;
    }
    document.write("排序升序后數(shù)組:"+x.join(",")+"<p>");  //輸出排序后的數(shù)組
    x.sort(des);  //有比較函數(shù)的降序排列
    /*降序比較函數(shù)*/
    function des(a,b){
      return b-a;
    }
    document.write("排序降序后數(shù)組:"+x.join(",")); //輸出排序后數(shù)組
 </script>
</head>
<body>
</body>
</html>

以上實(shí)例代碼大家可以測試下,感謝大家的學(xué)習(xí)和對腳本之家的支持。

相關(guān)文章

最新評論