Jef*_*ado 0 javascript arrays sorting
我有一个重要性数组,我想按重要性排序,如下所示:
let criticalityTypes = ['CRITICALITY_LOW', 'CRITICALITY_HIGH', 'CRITICALITY_MEDIUM'];
Run Code Online (Sandbox Code Playgroud)
我会随机获得此顺序,有时** CRITICALITY_LOW **出现在矩阵的位置1,即位置2或“ CRITICALITY_MEDIUM”位于0位置,
我想做的是按照以下顺序进行排序,而不管我遇到的顺序如何,有时我只有一个或两个临界值:
['CRITICALITY_HIGH', 'CRITICALITY_MEDIUM', 'CRITICALITY_LOW'];
Run Code Online (Sandbox Code Playgroud)
我试图使用排序功能来排序到目前为止我所做的是:
return criticalityTypes.sort((a, b) => {
if (a < b) return -1;
if (a > b) return 1;
});
Run Code Online (Sandbox Code Playgroud)
但是没有成功,有什么帮助吗?
您可以采用所需顺序的对象,然后按值的增量进行排序。
var criticalityTypes = ['CRITICALITY_LOW', 'CRITICALITY_HIGH', 'CRITICALITY_MEDIUM'],
order = { CRITICALITY_HIGH: 1, CRITICALITY_MEDIUM: 2, CRITICALITY_LOW: 3 };
criticalityTypes.sort((a, b) => order[a] - order[b]);
console.log(criticalityTypes);Run Code Online (Sandbox Code Playgroud)