我正在try 对数组元素进行排序,如下所示:
let defaultOrder = [
{'item': 'Pen', 'value': '5'},
{'item': 'Spike', 'value': '5'},
{'item': 'Pencil', 'value': '5'},
{'item': 'Ink', 'value': '5'},
{'item': 'Mail', 'value': '5'},
{'item': 'Rubber', 'value': '5'}
];
let items = [
{'item': 'Spike', 'value': '5'},
{'item': 'Duck', 'value': '5'},
{'item': 'Ink', 'value': '5'},
{'item': 'Pencil', 'value': '5'},
{'item': 'Rubber', 'value': '5'},
{'item': 'Mail', 'value': '5'},
{'item': 'Pen', 'value': '5'}
];
let orderedItems = items.sort(function (a,b){
return defaultOrder.indexOf(a.item) - defaultOrder.indexOf(b.item)
});
我能够对元素进行排序,但是如何使未排序的元素(从{'item': 'Duck', 'value': '5'}
开始)被追加到已排序的项的末尾?