亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

javascript中sort() 方法使用詳解

2019-11-20 11:38:39
字體:
來源:轉載
供稿:網友

語法:arrayObject.sort(sortby);參數sortby可選。規定排序順序。必須是函數。

sort() 方法用于對數組的元素進行排序。

如果調用該方法時沒有使用參數,將按字母順序對數組中的元素進行排序,說得更精確點,是按照字符編碼的順序進行排序。要實現這一點,

首先應把數組的元素都轉換成字符串(如有必要),以便進行比較。

如果想按照其他標準進行排序,就需要提供比較函數,該函數要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數字。

比較函數應該具有兩個參數 a 和 b,其返回值如下:

 若 a 小于 b,在排序后的數組中 a 應該出現在 b 之前,則返回一個小于 0 的值。

 若 a 等于 b,則返回 0。

 若 a 大于 b,則返回一個大于 0 的值。

 用js中的sort()方法排序數字

<script>  var arr = [23,12,1,34,116,8,18,37,56,50];  alert(arr.sort();</script>

   返回:[1, 116, 12, 18, 23, 34, 37, 50, 56, 8]

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

<script>  var arr = [23,12,1,34,116,8,18,37,56,50];  function sequence(a,b){    if (a>b) {      return 1;    }else if(a<b){      return -1    }else{      return 0;    }  }  console.log(arr.sort(sequence));</script>

  返回:[1, 8, 12, 18, 23, 34, 37, 50, 56, 116] (沒有問題)

當然也可以把排序函數寫到sort()方法里面:

<script>  var arr = [23,12,1,34,116,8,18,37,56,50];  var arr2 = arr.sort(function(a,b){     if (a>b) {      return 1;    }else if(a<b){      return -1    }else{      return 0;    }    })  console.log(arr2);</script>

  返回:[1, 8, 12, 18, 23, 34, 37, 50, 56, 116] (也沒有問題)

也可以簡化成這樣的寫法
因為:若 a 小于 b,在排序后的數組中 a 應該出現在 b 之前,則返回一個小于 0 的值。

若 a 等于 b,則返回 0。

若 a 大于 b,則返回一個大于 0 的值

 <script>   var arr = [23,12,1,34,116,8,18,37,56,50];   function sequence(a,b){     return a - b;   }   console.log(arr.sort(sequence)); </script>

返回:[1, 8, 12, 18, 23, 34, 37, 50, 56, 116] (也是正確的)

關系字母順序進行排序 就簡單多了,直接用sort()方法就OK了:

 <script>   var arr = ['fanda','banner','find','zoom','index','width','javascript'];   console.log(arr.sort()); </script>

返回:["banner", "fanda", "find", "index", "javascript", "width", "zoom"]

 現在在學習javascript中,發現sort()函數是有點奇怪的東西(可能是本人水平的問題-_-?。?,于是就在這里記錄一下自己找到的東西吧。sort()這個方法的參數很奇怪,必須是函數,但也是可選參數,如果沒有參數的話,就會默認以字符串的字典順序來排列(就算是數值,也會被轉化為字符串來處理)。這個參數是要能夠比較兩個值的大小,如:

復制代碼 代碼如下:

function sortNumber(a, b){
   return a - b; //這里返回的是他們的差值,如果是小于0的值,就會將a排在前面,如果大于0,就會將b排在前面,如果是0的話,就隨便。(冒泡排序法?。。?br />}

 應用如下(這個例子太經典了!?。?/p>

<script type="text/javascript">function sortNumber(a,b){return a - b}var arr = new Array(3)arr[0] = "10";arr[1] = "5";arr[2] = "4";document.write(arr + "<br />");document.write(arr.sort(sortNumber));</script>

那么原本是10,5,4的排列就會變成4,5,10.這里說明一下這個過程,明明sortNumber應該是有兩個參數,但是我們在調用時卻一個參數都沒有,怎么進行比較?。窟@里是這樣的,當arr從第一個數開始調用sort時,10前面是沒有數與它比較的,所以就到第二個,就是5,這時10就會與5比較,于是就會調用sortNumber并將10和5傳進去,這是sort()的特性。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线电影中文日韩| 久久视频在线免费观看| 日韩精品www| 亚洲精品第一国产综合精品| 国产欧美精品日韩| 欧美一级黑人aaaaaaa做受| 丁香五六月婷婷久久激情| 精品福利在线看| 国产精品久久91| 国产精品专区h在线观看| 国产一区二区香蕉| 国产精品精品一区二区三区午夜版| 国产成人久久久| 91av在线免费观看视频| 亚洲欧美福利视频| 欧美极品在线视频| 亚洲影院色无极综合| 中文字幕精品在线视频| 亚洲xxxx视频| 亚洲一区二区三区视频| 亚洲成色www8888| 久久成人一区二区| 日韩三级影视基地| 久久久亚洲网站| 久久久久久久色| 91高清在线免费观看| 97国产一区二区精品久久呦| 中文字幕日韩精品在线| 日韩电影免费在线观看| 日韩经典第一页| 青青草成人在线| 91福利视频网| 日韩欧美一区二区三区| 亚洲日韩中文字幕在线播放| 久久精视频免费在线久久完整在线看| 91国产美女在线观看| 日韩专区在线播放| 91中文字幕在线观看| 日韩精品福利在线| 亚洲在线视频福利| 欧美精品久久久久久久久久| 日本一区二三区好的精华液| 国产精品精品久久久久久| 亚洲free嫩bbb| 久久久精品电影| 久久久久久91香蕉国产| 日韩动漫免费观看电视剧高清| 久久久久久91香蕉国产| 亚洲视频在线观看免费| 91沈先生在线观看| 奇米四色中文综合久久| 中文字幕亚洲一区二区三区| 欧美激情中文网| 91青草视频久久| 亚洲国产精品99| 亚洲精品网址在线观看| 日韩免费精品视频| 国产精品久久久久久久app| 欧洲亚洲免费在线| 国产91在线播放九色快色| 日韩最新免费不卡| 欧美日韩精品中文字幕| 久久久久国色av免费观看性色| 中文字幕无线精品亚洲乱码一区| 在线观看欧美成人| 日韩欧美亚洲范冰冰与中字| 国产精品欧美风情| 亚洲一区av在线播放| 国内精品小视频| 国产成人精品视频在线观看| 亚洲欧美另类自拍| 日韩av在线播放资源| 精品国内产的精品视频在线观看| 国产精品美女呻吟| 91国内产香蕉| 国产日韩精品电影| 国产精品久久久久久久久久免费| 亚洲奶大毛多的老太婆| 日本道色综合久久影院| 中文字幕日韩综合av| 欧美国产日韩一区二区在线观看| 久久天天躁狠狠躁夜夜av| 国产国语videosex另类| 久久精品国产96久久久香蕉| 亚洲欧美日韩精品| 丰满岳妇乱一区二区三区| 尤物九九久久国产精品的分类| 亚洲网站在线播放| 91精品久久久久久久久久| 日韩成人在线网站| 美女性感视频久久久| 亚洲国产精品小视频| 日韩中文字幕视频在线| 亚洲天堂免费在线| 欧美性猛交xxxxx免费看| 97不卡在线视频| 国产精品视频地址| 久久成人国产精品| 亚洲xxxx妇黄裸体| 国产精品一区二区久久久久| 成人av资源在线播放| 亚洲a∨日韩av高清在线观看| 久久久免费观看视频| 欧美超级免费视 在线| 国产综合久久久久| 日韩在线观看免费全| 国产午夜精品美女视频明星a级| 久久久久久久久爱| 日韩欧美亚洲范冰冰与中字| 2025国产精品视频| 日韩毛片中文字幕| 久久99精品国产99久久6尤物| 亚洲欧洲av一区二区| 国产在线观看精品| 国产亚洲精品高潮| 亚洲va欧美va国产综合剧情| 在线观看国产精品日韩av| 亚洲国产精品嫩草影院久久| 久久伊人免费视频| 欧美激情中文字幕乱码免费| 欧美日韩亚洲高清| 亚洲成人久久一区| 亚洲天堂av女优| 日韩精品在线免费观看视频| 国产精品成熟老女人| 欧美大片va欧美在线播放| 久久免费在线观看| 一本色道久久88综合日韩精品| 欧美巨猛xxxx猛交黑人97人| 国自产精品手机在线观看视频| 亚洲乱码一区av黑人高潮| 日本不卡视频在线播放| 国产精品狠色婷| 久久久亚洲精品视频| 国内精品一区二区三区| 九九热这里只有精品6| 亚洲二区在线播放视频| 这里只有精品视频| 一区二区三欧美| 欧美大肥婆大肥bbbbb| 成人午夜在线视频一区| 91视频九色网站| 久久精品免费电影| 久久久在线观看| 久久久精品亚洲| 国精产品一区一区三区有限在线| 亚洲图中文字幕| 色婷婷久久一区二区| 国内精品400部情侣激情| 成人免费看黄网站| 日韩成人网免费视频| 久久久久国产精品免费| 亚洲国内精品视频| 自拍偷拍亚洲欧美| 久久久精品影院| 在线国产精品视频| 日韩精品视频免费在线观看| 日本免费一区二区三区视频观看| 日韩免费在线视频| 成人黄色午夜影院| 中文字幕精品一区久久久久| 国产精品免费一区豆花| 麻豆精品精华液| 国产精品尤物福利片在线观看|