我浏览了几篇有类似问题的帖子,但找不到能解决我的问题的帖子。其他似乎都使用相同大小或按值的另一个数组进行排序。
我有两个如下所示的数组:
var allCategories = ['Campus', 'Building', 'Floor', 'Room', 'Lecture Theatre', 'Lab'];
var currentCategories = ['Room', 'Lab', 'Campus'];
如何对 currentCategories
进行排序,以便与 allCategories
的顺序匹配?
所需输出:
currentCategories --> ['Campus', 'Room', 'Lab'];
最佳答案
“根据该数组中元素的索引对该数组进行排序”:
currentCategories.sort(function(a, b) {
return allCategories.indexOf(a) - allCategories.indexOf(b);
});
// => ["Campus", "Room", "Lab"]
关于javascript - 根据另一个不同长度数组中的值对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25859462/