我有兩個單獨的數組需要處理。由於它們不是依賴的,我想這樣做異步。使用async.parallel處理數組
這裏是我的代碼:
cats = ['snowball', 'berlioz', 'garfield', 'lucifer'];
tigers = ['shere khan', 'hobbes', 'rajah'];
async.parallel({
cats: async.apply(cats.forEach(function(item){
if(item == 'garfield')
console.log('hide your lasagna');
else
console.log('all safe');
})),
tigers: async.apply(tigers.map(function(item){
if(item == 'hobbes')
return 'eats tuna';
else
return 'eats people';
}))
}, function(error, results){
if(error)
console.log(error); return;
meals = JSON.parse(results['tigers']);
console.log('tiger meals: '+meals);
});
這是錯誤我得到:
TypeError: Cannot call method 'apply' of undefined
什麼錯?
此外,作爲一個側面問題,我如何在這裏實現async.forEach
和async.map
?
這些是一些非常好的指針謝謝你!我現在可以看到我是如何誤認爲「異步」的「多線程」。 – CrackerKraken