成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

js中sort的使用(二)

BlackFlagBin / 2905人閱讀

摘要:中的使用一現(xiàn)在我們討論第二種情況的排序。里面的數(shù)據(jù)就是已領(lǐng)取的項,所以我們排序后的結(jié)果為,,,,,,,,,。首先我們?yōu)閷懸粋€方法,用來判斷所傳數(shù)據(jù)是否存在于中然后吧中的值傳入里面就行了完

js中sort的使用(一)

現(xiàn)在我們討論第二種情況的排序。
第一種情況是整個數(shù)組都是服務(wù)端給過來的,所以里面的value值也是服務(wù)端發(fā)的。那么,如果服務(wù)端只發(fā)id給你呢?
這種情況就是,你現(xiàn)在有一個數(shù)組arr1,服務(wù)端給你一個數(shù)組比如arr2。

let arr1 = [
    {id:1,name:"a"},
    {id:2,name:"b"},
    {id:3,name:"c"},
    {id:4,name:"d"},
    {id:5,name:"e"},
    {id:6,name:"f"},
    {id:7,name:"g"},
    {id:8,name:"h"},
    {id:9,name:"i"},
    {id:10,name:"j"}
];
let arr2 = [
    {id:1},
    {id:2},
    {id:3},
    {id:5}
];

arr2里面的數(shù)據(jù)就是已領(lǐng)取的項,所以我們排序后arr1的結(jié)果為:4,6,7,8,9,10,1,2,3,5。
那么我們只要判斷arr1里面的項的id有等于arr2里面的項的id的時候,就把arr1的那個項拋到數(shù)組的最后面就行了,所以:

let num = 0;
for(let key in arr2) {
    for(let i = 0,l = arr1.length; i < l; i++) {
         if(arr1[i].id == arr2[key].id){
        let str = arr1.splice(i,1);
            arr1.unshift(str[0]);
            arr1.push(str[0]);
            num ++;
        }
    }
}
arr1.splice(0,num)   

哈哈,這種方法雖然也可以。但是不建議,就像第一章所說的,接下來我們來看看sort方法吧。
首先我們?yōu)閍rr2寫一個方法,用來判斷所傳數(shù)據(jù)是否存在于arr2中

function rank(val) {
 for(let key in arr2){
     if(val == arr2[key].id){
      return 1;
     } 
 }
 return 0;
 }   

然后吧arr1中id的值傳入rank()里面就行了

arr1.sort((a,b)=>{
    if(rank(a.id) == 1 && rank(b.id) != 1){
        return 1;
    }else if(rank(a.id) != 1 && rank(b.id) == 1){
        return -1;
    }
    return 0;
})

(完)

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/103552.html

相關(guān)文章

  • IFE JS練習(|三) 數(shù)組sort,forEach,slice和filter方法

    摘要:返回表示保留該元素通過測試,則不保留。否則,的值在非嚴格模式下將是全局對象,嚴格模式下為。索引數(shù)組中正在處理的當前元素的索引。當執(zhí)行回調(diào)函數(shù)時用作的值參考對象。是數(shù)組組所以要帶,用轉(zhuǎn)換為數(shù)值類型。 代碼塊: var aqiData = [ [北京, 90], [上海, 50], [福州, 10], [廣州, 50], [成都, 90], ...

    Aomine 評論0 收藏0
  • jssort總結(jié)

    摘要:字母排序默認排序運行結(jié)果數(shù)字排序中參數(shù)可以是方法函數(shù),可以升序和降序輸出結(jié)果。數(shù)字排序升序,降序運行結(jié)果注意其中都是表示這個數(shù)組里面的元素,如果是則表示升序,如果是則表示降序。以上屬于個人總結(jié),如果后期有什么補充會再次發(fā)布 數(shù)據(jù)排序這塊應(yīng)該是每個程序員都會遇到的,而這篇文章主要是介紹js中sort排序如何使用得當,既然有現(xiàn)成的封裝的方法就用現(xiàn)成的,自己稍加修改就能完成,不需要再重新自己...

    stdying 評論0 收藏0
  • jssort總結(jié)

    摘要:字母排序默認排序運行結(jié)果數(shù)字排序中參數(shù)可以是方法函數(shù),可以升序和降序輸出結(jié)果。數(shù)字排序升序,降序運行結(jié)果注意其中都是表示這個數(shù)組里面的元素,如果是則表示升序,如果是則表示降序。以上屬于個人總結(jié),如果后期有什么補充會再次發(fā)布 數(shù)據(jù)排序這塊應(yīng)該是每個程序員都會遇到的,而這篇文章主要是介紹js中sort排序如何使用得當,既然有現(xiàn)成的封裝的方法就用現(xiàn)成的,自己稍加修改就能完成,不需要再重新自己...

    liuchengxu 評論0 收藏0
  • jssort總結(jié)

    摘要:字母排序默認排序運行結(jié)果數(shù)字排序中參數(shù)可以是方法函數(shù),可以升序和降序輸出結(jié)果。數(shù)字排序升序,降序運行結(jié)果注意其中都是表示這個數(shù)組里面的元素,如果是則表示升序,如果是則表示降序。以上屬于個人總結(jié),如果后期有什么補充會再次發(fā)布 數(shù)據(jù)排序這塊應(yīng)該是每個程序員都會遇到的,而這篇文章主要是介紹js中sort排序如何使用得當,既然有現(xiàn)成的封裝的方法就用現(xiàn)成的,自己稍加修改就能完成,不需要再重新自己...

    stdying 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<