js---根据指定的顺序进行排序

有一个数据列表,我需要根据根据ID依次来取里面的第9,3,8,4项,具体的实现方法。

var arr = [
    {id:1,title:'我是第一个'},
    {id:2,title:'我是第二个'},
    {id:3,title:'我是第三个'},
    {id:4,title:'我是第四个'},
    {id:5,title:'我是第五个'},
    {id:6,title:'我是第六个'},
    {id:7,title:'我是第七个'},
    {id:8,title:'我是第八个'},
    {id:9,title:'我是第九个'},
    {id:10,title:'我是第十个'},
];
console.log(arr);
var cur = [9,3,8,4];
console.log(cur);
var push = [];
for(x in arr){
    if(in_array(arr[x].id,cur)){
        arr[x]['sort'] = cur.indexOf(arr[x].id);
        push.push(arr[x]);
    };
};
push = push.sort(function(a,b){  
    if(a.sort<b.sort){  
        return -1;  
    }else if(a.sort>b.sort){  
        return 1;  
    }  
    return 0;  
});
for(x in push){
    console.log(push[x].title);
};
function in_array(search,array){
    for(var i in array){
        if(array[i]==search){
            return true;
        }
    }
    return false;
}

效果:

猜你喜欢

转载自www.cnblogs.com/e0yu/p/10675089.html
今日推荐