使用javascript根据另一个数组对一个数组进行排序
我有两个数组使用javascript根据另一个数组对一个数组进行排序,java,javascript,jquery,arrays,sorting,Java,Javascript,Jquery,Arrays,Sorting,我有两个数组 MRP[60 80 82 50 80] 品牌[A B C D E F] 我需要根据MRP获得前两个品牌。MRP中最高的两个是82,80,但80重复了3次,所以我需要所有重复的值,以及获得前两个品牌。i、 e我需要显示[C B e F] 为此,我将MRP按降序排序。现在排序后的MRP变成了[82 80 60 50] 现在我需要根据已排序的MRP对品牌数组进行排序。有人可以使用javascript帮助进行排序。尝试下面的代码 var A = [60, 80, 82, 50, 80, 8
[60 80 82 50 80]
[A B C D E F]
[C B e F]
为此,我将MRP按降序排序。现在排序后的MRP变成了[82 80 60 50]
现在我需要根据已排序的MRP对品牌数组进行排序。有人可以使用javascript帮助进行排序。尝试下面的代码
var A = [60, 80, 82, 50, 80, 80];
var B = ['a', 'b', 'c', 'd', 'e', 'f'];
var all = [];
for (var i = 0; i < B.length; i++) {
all.push({ 'A': A[i], 'B': B[i] });
}
all.sort(function(a, b) {
return b.A - a.A;
});
A = [];
B = [];
for (var i = 0; i < all.length; i++) {
A.push(all[i].A);
B.push(all[i].B);
}
alert(A);
alert( B);
var A=[60,80,82,50,80,80];
变量B=['a','B','c','d','e','f'];
var all=[];
对于(变量i=0;i
使用lodash/下划线:
var A = [60, 80, 82, 50, 80, 80];
var B = ['a', 'b', 'c', 'd', 'e', 'f'];
var result = _.unzip(_.sortBy(_.zip(A, B), '-0'));
var A_sorted = result[0]; // [82, 80, 80, 80, 60, 50]
var B_sorted = result[1]; // ["c", "b", "e", "f", "a", "d"]]
到目前为止你自己有没有尝试过?这是Java还是JavaScript?@ZiNNED我只排序了第一个数组ie MRP bt而不是品牌。但现在我在随后的帖子中得到了Nishanthi Grashia共享的解决方案。很高兴能提供帮助!如果有帮助,请投票并接受作为答案。