使用javascript基于另一个数组对一个数组进行排序

时间:2014-06-13 08:52:30

标签: java javascript jquery arrays sorting

我有两个数组

  1. MRP [60 80 82 50 80 80 ]
  2. 品牌[ A B C D E F ]
  3. 我需要根据MRP获得两大品牌。 MRP中最高的两个是82,80但80是重复的3次所以我需要所有重复的值以获得前两个品牌。即我需要显示[C B E F]

    为此我按降序排序MRP。排序后的现在MRP变为[ 82 80 80 60 50 ]

    现在我需要根据Sorted MRP对Brand Array进行排序。可以使用javascript对此排序提供一些帮助。

2 个答案:

答案 0 :(得分:9)

尝试以下代码

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);

答案 1 :(得分:0)

使用lodash / underscore:

while