gpt4 book ai didi

javascript - 如何根据另一个数组的内容对数组进行排序

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:21:39 25 4
gpt4 key购买 nike

我有一个数组 X = [12,14,12,45,12] 和另一个数组 Y = [34,12,23,47,20]。我正在对 X 数组进行排序,所以现在 X = [12,12,12,14,45]。现在我想将 Y 排序为 Y = [34,23,20,12,47]。任何帮助,将不胜感激。谢谢

最佳答案

您可以构建索引数组并使用引用 X 的自定义比较器函数对其进行排序,然后使用该数组对 Y 进行“排序”:

var X = [12,14,12,45,12];
var Y = [34,12,23,47,20];
var xIndexes = [];
X.forEach((value, index) => xIndexes.push(index));

xIndexes.sort((a, b) => X[a] < X[b] ? -1 : X[a] > X[b] ? 1 : 0);

var newX = [];
var newY = [];

xIndexes.forEach((index) => {
newX.push(X[index]);
newY.push(Y[index]);
});

console.log(newX);
console.log(newY);

关于javascript - 如何根据另一个数组的内容对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44941843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com