回覆列表
  • 1 # 大暖小慧

    sort() 方法用於對陣列的元素進行排序。 語法:arrayObject.sort(sortby);引數sortby可選。規定排序順序。必須是函式。 注:如果呼叫該方法時沒有使用引數,將按字母順序對陣列中的元素進行排序,說得更精確點,是按照字元編碼的順序進行排序。要實現這一點,首先應把陣列的元素都轉換成字串(如有必要),以便進行比較。

    如果想按照其他標準進行排序,就需要提供比較函式,該函式要比較兩個值,然後返回一個用於說明這兩個值的相對順序的數字。比較函式應該具有兩個引數 a 和 b,其返回值如下:

    若 a 小於 b,在排序後的陣列中 a 應該出現在 b 之前,則返回一個小於 0 的值。

    若 a 等於 b,則返回 0。

    若 a 大於 b,則返回一個大於 0 的值。 如例3。

    例1:我們將建立一個數組,並按字母順序進行排序:

    輸出:

    例2:我們將建立一個數組,並按字母順序進行排序:

    輸出:

    請注意,上面的程式碼沒有按照數值的大小對數字進行排序,要實現這一點,就必須使用一個排序函式:

    輸出:

    例4: 數字從大到小排序<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

  • 中秋節和大豐收的關聯?
  • 佟大為、劉詩詩主演的電視劇《如果可以這樣愛》劇情講述的是什麼?都有哪些看點?