當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JavaScript数组sort方法(数组排序)
生活随笔
收集整理的這篇文章主要介紹了
JavaScript数组sort方法(数组排序)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
數組對象的sort方法可以按照一定的順序把數組元素重新排列起來。通常情況下,都是按照字母順序排列的。
JavaScript代碼<script type="text/javascript">? ?
? ? var arr = ["HTML","CSS","JavaScript","DOM"];? ?
? ? var arr2 =??[4,3,2,1];? ?
? ? var arr3 =??[40,300,2000,10000];? ?
</script>?? 復制代碼測試數組的sort方法
? ? arr.sort();方法:可以看到,arr數組本來是"HTML","CSS","JavaScript","DOM"。而sort之后將是" <script type="text/javascript"></script> CSS","DOM","HTML","JavaScript" 。
? ? arr2.sort();方法:而arr2本來是4,3,2,1,而排序之后則是 <script type="text/javascript"></script> 1,2,3,4 。不過這可不是按照數字的大小來排列的,而仍然是按照字母順序。從arr3.sort()的結果就可以看出來。
? ? arr3.sort()方法:數組排列之后的順序是10000,2000,300,40,10000作為最大的數字卻排在了第一位,僅僅是因為它以1開頭。
sort方法的參數
? ? sort方法可以接受一個參數,這個參數的類型是函數,它也就是排序函數了。我們可以使用它來進行自定義的排序方式。例如,我們可以讓上面的數字數組按照大小的方式排序。看下面的JS代碼:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">? ?
<html xmlns="http://www.w3.org/1999/xhtml">? ?
<head>? ?
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />? ?
<title>無標題文檔</title>? ?
<script type="text/javascript">? ?
? ? var arr3 = [40,300,200,10000];? ?
? ?? ?
? ? function compare(a,b)? ?
? ? {? ?
? ?? ???return b-a;? ?
? ? }? ?
? ? function test()? ?
? ? {? ?
? ?? ???arr3.sort(compare);? ?
? ?? ???alert(arr3.join());? ?
? ? }? ?
</script>? ?
</head>? ?
<body>? ?
<input type="button" value="text" </body>? ?
</html>?? 復制代碼在執行arr3.sort(compare)方法時,當我們使用自定義的compare函數進行排序的時候,10000這個最大的數字已經順利地排到最后了(順序是:40,300,200,10000)。從代碼中我們可以觀察出來,sort是根據排序函數的返回值是正還是負來排序的。所以如果compare函數寫成 return b - a; 則排序后的順序為:10000,200,300,40
JavaScript代碼
? ? arr.sort();方法:可以看到,arr數組本來是"HTML","CSS","JavaScript","DOM"。而sort之后將是" <script type="text/javascript"></script> CSS","DOM","HTML","JavaScript" 。
? ? arr2.sort();方法:而arr2本來是4,3,2,1,而排序之后則是 <script type="text/javascript"></script> 1,2,3,4 。不過這可不是按照數字的大小來排列的,而仍然是按照字母順序。從arr3.sort()的結果就可以看出來。
? ? arr3.sort()方法:數組排列之后的順序是10000,2000,300,40,10000作為最大的數字卻排在了第一位,僅僅是因為它以1開頭。
sort方法的參數
? ? sort方法可以接受一個參數,這個參數的類型是函數,它也就是排序函數了。我們可以使用它來進行自定義的排序方式。例如,我們可以讓上面的數字數組按照大小的方式排序。看下面的JS代碼:
轉載于:https://blog.51cto.com/yk1688/384553
總結
以上是生活随笔為你收集整理的JavaScript数组sort方法(数组排序)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript - OOP编程思想
- 下一篇: OSI模型数据链路层为什么需要分层?