我刚刚开始使用JS和Node进行编程,但我还没有习惯于异步的东西。 基本上,我有以下代码:处理异步函数
for (var i=0, len=sources.length; i<len; i++) {
processSource(sources[i], function(info) {
doesOtherStuff(sources[i], info);
});
}
它并没有真正的工作,因为,作为processSource
需要一段时间才能完成,功能doesOtherStuff
被调用时不匹配的参数,如sources[2]
并将处理后的信息为sources[0]
。
处理这个问题的正确方法是什么?这些功能的设计是否有内在的错误? (processSource和doesOtherStuff都是我的功能)。
“INT” hmmmm,看上去是错的。 – epascarello
错字,对不起= P。问题依然存在。 –
你告诉我一个使用javascript forEach的理由! – damphat