如何使用Javascript根据另一个数组的相应元素的属性对数组进行排序?

维克多1903

说我有两个数组。一个是:

A = [a, b, c, d]

另一个是

B = [w, x, y, z]

A中的每个元素对应于B中的相应元素

(i.e. a -> w, b -> x, c -> y, d -> z)

现在,我要按照B元素的属性(例如值)的升序对数组A进行排序

(eg. w.value = 3, x.value = 2, y.value = 1, z.value = 4)

因此,我想要的输出是:

[c,b,a,d]

如何使用Javascript执行此操作?任何帮助将不胜感激。我在这个问题上停留了很长时间。

妮娜·斯科茨(Nina Scholz)

您可以获取索引,使用的值对它们进行排序,ba通过使用排序的索引来映射的值

var a = ['a', 'b', 'c', 'd'] ,
    b = [3, 2, 1, 4],
    indices = [...b.keys()].sort((x, y) => b[x] - b[y]),
    result = indices.map(i => a[i]);

console.log(result);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据PHP上的另一个数组对数组的元素进行排序

根据另一个数组的键对数组元素进行排序

我想根据javascript中的另一个数组对数组进行排序?

根据javascript中的另一个数组对数组进行排序

Javascript-根据另一个数组对数组进行排序

如何根据另一个数组中每个元素的排名对数组进行排序(按升序)?

仅使用 sort 函数,按词法顺序根据另一个数组对数组元素进行排序

如何根据另一个数组的位置对数组进行排序?

如何根据另一个数组的值对数组的值进行排序

Javascript使用下划线根据另一个数组顺序对数组顺序进行排序

使用另一个数组的对象属性对数组进行排序

如何根据JavaScript中的另一个数组对数组排序?

如何使用另一个数组作为模板对数组数据进行排序?

根据另一个数组中的顺序对数组数组进行排序

根据另一个数组的顺序对数组数组进行排序(Ruby)

根据另一个数组中定义的排序顺序对数组进行排序

根据另一个数组的排序顺序对数组进行排序

如何根据另一个数组的排序方式对一个数组进行排序?(JavaScript)

在绘制之前根据另一个数组对数组进行排序

根据另一个数组按顺序对数组进行排序

根据另一个数组的顺序对数组进行有效排序

根据存储在另一个数组中的引用对数组进行排序

PHP 根据另一个数组对数组进行排序

PHP根据另一个数组定义的顺序对数组进行排序

按另一个数组中的属性对数组进行排序

CUDA:使用推力根据另一个数组定义的顺序对数组进行排序

如何根据另一个数组的排序顺序对多个数组进行排序

根据另一个对象数组的属性值对数组进行排序

用JavaScript中另一个数组的内容对数组进行排序