我有一个数组,我需要基于 TypeID 的自定义排序顺序 CategoryId:(5,9,14,1,9,3) 的最终输出
console.log(_.sortBy(arr, 'CategoryID'));
我可以对 CategoryId 进行排序,但我想按特定顺序按 CategoryID 排序。
<html>
<head>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
</script>
</head>
<body>
<script type="text/javascript">
var arr = [
{name: 'kim', salary: 4000,CategoryId:3, TypeId:1},
{name: 'shelly', salary: 5000,CategoryId:14, TypeId:1},
{name: 'don', salary: 100,CategoryId:9, TypeId:1},
{name: 'mark', salary: 4500,CategoryId:5, TypeId:2},
{name: 'mark', salary: 4500,CategoryId:5, TypeId:1},
{name: 'joh', salary: 3450,CategoryId:9, TypeId:1},
{name: 'joe', salary: 5100,CategoryId:1, TypeId:1},
{name: 'moore', salary: 5100,CategoryId:14, TypeId:2},
{name: 'wane', salary: 1500,CategoryId:14, TypeId:2},
{name: 'dick', salary: 400,CategoryId:3, TypeId:1}
];
console.log(_.sortBy(arr, 'CategoryId'));
</script>
</body>
我希望
CategoryId:(5,9,14,1,3) 的结果集特定顺序
最终输出:
const output = [{
name: 'mark',
salary: 4500,
CategoryId: 5,
TypeId: 1,
}, {
name: 'joh',
salary: 3450,
CategoryId: 9,
TypeId: 1,
}, {
name: 'don',
salary: 100,
CategoryId: 9,
TypeId: 1,
}, {
name: 'joh',
salary: 3450,
CategoryId: 9,
TypeId: 1,
}, {
name: 'shelly',
salary: 5000,
CategoryId: 14,
TypeId: 1,
}, {
name: 'joe',
salary: 5100,
CategoryId: 1,
TypeId: 1,
}, {
name: 'kim',
salary: 4000,
CategoryId: 3,
TypeId: 1,
}, {
name: 'mark',
salary: 4500,
CategoryId: 5,
TypeId: 2,
}, {
name: 'moore',
salary: 5100,
CategoryId: 14,
TypeId: 2,
}, {
name: 'wane',
salary: 1500,
CategoryId: 14,
TypeId: 2,
}];
哔哔one
萧十郎
相关分类