JSFiddle - React, Tailwind, and code Playground
by Anchal Sachdeva
JavaScript
function mapOrder (array, order, key) {
array.sort( function (a, b) {
var A = a[key], B = b[key];
if (order.indexOf(A) > order.indexOf(B)) {
return 1;
} else {
return -1;
}
});
return array;
};
/**
* Example:
*/
var item_array, item_order, ordered_array;
item_array = [
{ id: 2, label: 'Two' },
{ id: 3, label: 'Three' },
{ id: 5, label: 'Five' },
{ id: 4, label: 'Four' },
{ id: 1, label: 'One'}
];
item_order = [{"category_id":1},{"category_id":2},{"category_id":3},{"category_id":4},{"category_id":5}];
item_order = item_order.map(p=>p.category_id)
ordered_array = mapOrder(item_array, item_order, 'id');
console.log("ordered Array ", ordered_array);