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

模擬javascript中的sort排序(簡單實(shí)例)

 更新時(shí)間:2016年08月17日 10:52:12   投稿:jingxian  
下面小編就為大家?guī)硪黄Mjavascript中的sort排序(簡單實(shí)例)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

一、javascript中sort對數(shù)據(jù)進(jìn)行排序的原理

sort() 方法對數(shù)組的元素做原地的排序,并返回這個(gè)數(shù)組。 sort 可能不是穩(wěn)定的。默認(rèn)按照字符串的Unicode碼位點(diǎn)排序;

語法:arr.sort([compareFunction])

參數(shù) compareFunction

可選。用來指定按某種順序進(jìn)行排列的函數(shù)。如果省略,元素按照轉(zhuǎn)換為的字符串的諸個(gè)字符的Unicode位點(diǎn)進(jìn)行排序。

如果 compareFunction(a, b) 小于 0 ,那么 a 會(huì)被排列到 b 之前;

如果 compareFunction(a, b) 等于 0 , a 和 b 的相對位置不變。備注: ECMAScript 標(biāo)準(zhǔn)并不保證這一行為,而且也不是所有瀏覽器都會(huì)遵守

如果 compareFunction(a, b) 大于 0 , b 會(huì)被排列到 a 之前。

//將數(shù)組中的元素按照從小大的順序排列
 var arr=[11,55,22,45,16,87];

  arr.sort(function(a,b){
    return a-b;
  });
  console.log(arr);

二、模擬javascript內(nèi)部對數(shù)據(jù)進(jìn)行排序的原理

sortSelf(arr,function(a,b){
    return a-b;
  });
  console.log(arr);

 function sortSelf(array,fn){
    for (var i = 0; i < array.length-1; i++) {
      var isSorted=true; //默認(rèn)已經(jīng)排好序
      for (var j = 0; j < array.length-1-i; j++) {
        //調(diào)用函數(shù)
        if(fn(array[j],array[j+1])>0){
          //交換兩個(gè)變量
          var temp=array[j];
          array[j]=array[j+1];
          array[j+1]=temp;
          isSorted=false;
        }
      }
      if(isSorted){
        break;
      }
    }
  }

以上這篇模擬javascript中的sort排序(簡單實(shí)例)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論