基本上,我有这个数组
array = [[1,0],[2,1],[0,3],[3,2]]
是否有任何快速方法可以将数组转换为如下所示
array = [[0,3],[3,2],[2,1],[1,0]]
我想要的是新数组的第一个元素在嵌套数组的第一个位置始终包含 0。这很简单,因为 sort()
函数正是这样做的;困难的部分是像上面那样对新数组进行排序。
用最简单的术语来说,我希望嵌套数组能够“连接”:查看第一个嵌套数组的 3
如何与其他 3
匹配这是正确的等等。
请随意留下任何评论,以便我可以更好地解释问题。
最佳答案
对于您给出的示例,最简单的解决方案是按每个内部数组的第二个元素对二维数组进行排序,如下所示:
let array = [[1,0],[2,1],[0,3],[3,2]];
array.sort((a, b) => b[1] - a[1]);
这样就可以根据内部数组的元素,使用sort方法对数组进行排序。
let array = [[1,0],[2,1],[0,3],[3,2]];
array.sort((a, b) => b[1] - a[1]);
console.log(array);
关于javascript - 通过将最后一个值与下一个索引中的第一个值匹配来对 2D 数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70787936/