假设我有这个数组:
var arr = [1,2,3,4,5,6,7,8,9,10]
示例 :我想用每一对构造5个数组,这样它就变成了,
arr1 = [1,2]
arr2 = [2,4]
arr3 = [5,6]
这当然可以用模运算符(%)解决,因为它们只是对 - 所以它变成:
for (var i = 0; i < arr.length; i++) {
if(arr[i] % 2 === 0)
window['arr' + i].push(arr[i], arr[i - 1])
}
还有其他方法,例如嵌套循环等。
我觉得这可以用更简单的方法解决,所以我希望看到更多建议
那么有什么优雅的方法可以循环数组中的每个“n”项,对它们执行一些操作,然后移动到下一个“n”元素。
更新:
上面的示例处理 10 元素数组中的 2 个元素——这完全是随机的。我不是在寻找一种方法来处理数组中的对 - 问题是关于如何 循环数组中的每 N 个元素 ,对这 N 个元素执行任何操作并继续下一个 N 个元素
我也不打算创建新数组 - 问题仅与迭代原始数组有关。
最佳答案
使用普通的旧 for
循环,像这样
var N = 3;
for (var i = 0; i < array.length; i += N) {
// Do your work with array[i], array[i+1]...array[i+N-1]
}
关于javascript - 在每次迭代中循环 'n' 组中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27673431/