【发布时间】:2017-08-14 22:14:36
【问题描述】:
我对编程比较陌生,并且在我正在进行的项目中遇到了一些问题。
msg.newCG2 = [];
for(i=0;i<msg.newCG.length;i++){
for(j=0;j<msg.campaignGroup.length;i++){
if(msg.campaignGroup[j].col10 === msg.newCG[j]){
msg.groupTotals = msg.groupTotals + msg.campaignGroup[j].col11;
}
msg.newCG2.push(msg.newCG[i], msg.groupTotals)
}
}
基本上,对于 msg.newCG 中的每个“ID”(整数),我想在 msg.campaignGroup 中查找每个 ID,并总结来自 msg.campaignGroup 的具有相同 ID 的所有列表的总数。 col11 - 然后将 ID 和总数推送到一个新数组 - msg.newCG2。
当我运行代码时,第一个项目通过进程发送,但由于内存而停止。我认为这是因为我的代码有错误。
这段代码哪里出错了?我确信总体上有更好的方法可以做到这一点,但我很好奇我哪里出错了。
【问题讨论】:
-
看起来无论条件是否为真,您都将每条消息推送到数组。条件只是设置一个变量。此外,该推送在两个循环内。
-
非常感谢!您是否有时间更正此代码,以便我查看我的逻辑哪里出了问题?
-
原始数组有多大?
-
一个有 300 个条目,另一个有大约 4000 个条目。
标签: javascript node-red