There are many questions regarding sorting with JavaScript but I didn\'t find anything that addresses this case so I don\'t believe this is a duplicate.
I\'m getting dat
See in demo: http://jsbin.com/qaquzi/1/edit?js,console
//items array
var items = [{id:1, name:'bill'}, {id:2, name:'sam'}, {id:3, name: 'mary'}, {id:4, name:'jane'}]
//sort order array
var order = [{id:1, sortindex:4}, {id:2, sortindex:2}, {id:3, sortindex: 1}, {id:4, sortindex:3}]
var sortedOrder = _.sortBy(order, 'sortindex');
var bb = _.map(sortedOrder, function (i) {
return i.id;
})
var sorted = [];
for (var i = 0, ii = bb.length; i < ii; i++) {
for (var m = 0, mm = items.length; m < mm; m++) {
var a = items[m];
if (a.id == bb[i]) {
sorted.push(items[m]);
}
}
}
console.log(sorted);