在Javascript中完成嵌套迭代后推送值
我有一个嵌套的for循环,它迭代每个嵌套数组并使用它进行计算,另一个数组-->存储结果 我添加了一个计数器来检查内部迭代何时完成 数据集将非常大,因此我希望为性能排除尽可能多的额外步骤 没有计数器,我怎么能得到同样的结果在Javascript中完成嵌套迭代后推送值,javascript,arrays,nested-loops,Javascript,Arrays,Nested Loops,我有一个嵌套的for循环,它迭代每个嵌套数组并使用它进行计算,另一个数组-->存储结果 我添加了一个计数器来检查内部迭代何时完成 数据集将非常大,因此我希望为性能排除尽可能多的额外步骤 没有计数器,我怎么能得到同样的结果 const zip = (a,b) => a.map((x,i) => [x,b[i]]); // for a, b in zip(list1, list2): const firstArray = [[1,2], [2,1]]; const secondArra
const zip = (a,b) => a.map((x,i) => [x,b[i]]);
// for a, b in zip(list1, list2):
const firstArray = [[1,2], [2,1]];
const secondArray = [4,5]
const container = [];
for (const nestedArray of firstArray) {
let counter = 0;
let sum = 0;
for (const [a,b] of zip(nestedArray, secondArray )) {
let x = a *b;
sum += x
counter ++
if (counter === nestedArray.length) {
container.push(sum)
}
}
}
通过在内环后推,但仍在外环内,换句话说,
push(sum)
行应该与sum=0
行处于相同的缩进级别。如果您担心性能,那么您的zip
会扼杀它。