【发布时间】:2017-04-24 07:56:21
【问题描述】:
我有一个多维数组
arr = [[[1,1],[2,1],[3,1],[4,2],[5,2],[6,2],[7,3],[8,4]],
[[1,1],[2,1],[3,1],[4,3],[5,3],[6,4],[7,4],[8,5],[9,5],[10,5]]
];
等等...但是arr的维度不是固定的,是可变的。
我有一个变量告诉我应该把注意力放在哪里
var number = 2;
所以我的目标是查看任何 arr[i] 并根据第二个参数找到最大的第一个参数,我试图更好地解释我自己,在这种特殊情况下,如果数字是 2,我的期望是从 arr : 对于 arr -> 6 中的第一个数组(因为第二个参数是 1,1,1,2,2,2,3 所以我必须指向最后一个 2 并返回第一个参数) 对于 arr -> 3 中的第二个数组(因为缺少 2 而 1 是最后一个第二个参数)
我知道这有点棘手
我的第一个想法是创建一个 for 循环,在其中删除我的数字上的所有值,然后我可以取最后一个,但我认为我过于复杂了。
有没有更好更快的方法来达到同样的效果?
J
【问题讨论】:
-
你能再举一些例子吗?此外,您的阵列看起来可能是 3D 的? (有三个
[,也许这只是一个错误) -
在很多层面上令人困惑,但第二个参数不是 1,1,1,2,2,2,3,4 吗? (即最后 4 个缺失)
-
我完全不明白你在做什么。当您说“第一个参数”和“第二个参数”时,您是指内部数组的第一个和第二个元素吗?
-
基于什么数组?根据您的说法,与您的阵列样本中的值相比,最高值是多少 - 如果我们不了解这一点,就没有任何帮助。
-
当第二个元素 number 时,您想要最大的第一个元素,还是数组中的最后一个元素?还是因为第一个元素已排序,所以它们是相同的?
标签: javascript arrays multidimensional-array