我想根据排序顺序对数组进行排序。
public array1: Array<string> = [];
array.push(some string values); //E.g dog,apple,man
我有一个类似
的排序顺序所以我想像狗,男人,苹果一样对这个数组进行排序。
如何在打字稿中执行此操作。
答案 0 :(得分:3)
如果您在地图(对象)中有订单,则可以执行此操作。
let list = ['dog', 'cat','apple'];
let sortOrder = {
dog: 1,
cat: 3,
apple: 2
}
list.sort((a, b) => sortOrder[a] - sortOrder[b]);
您可以看到一个有效的游乐场示例here。
答案 1 :(得分:3)
我想你使用TypeScript(在你的问题中标记)。
{{1}}
您已经增强了您的问题,然后此答案不再相关(以及评论中提到的固定代码)。
答案 2 :(得分:0)
这也有效。 Source
randomizeArray(a, b, c, d) { // array, placeholder, placeholder, placeholder
c = a.length; while (c) b = Math.random() * c-- | 0, d = a[c], a[c] = a[b], a[b] = d
}
您可以通过这种方式调用此函数,其中data
是数组[]
this.randomizeArray(data, null, null, null);