2016-01-04 25 views
0

我有一個數組或數字和對象(同一長度):的Javascript復位數組項

var a = [2,0,1], b = [obj1,obj2,obj3]; 

我想重新定位在陣列「B」項號的位置,陣列「A」。

可以用jquery完成。

我怎樣才能最輕鬆地做到這一點?

感謝

回答

1

要做到這一點,沒有自動功能,但你可以用數組地圖得到這樣的結果。

var orderByArray = function(order, data) { 
    return order.map(function(pos) { 
    return data[pos]; 
    }); 
}; 

var a = [2,0,1]; 
var b = ['obj1', 'obj2', 'obj3']; 

var result = orderByArray(a, b); 

console.log('result', result); 
+1

很好的答案,這也適用:b.map(function(item,i,_a){return _a [a [i]}}) – KQI