Po prostu staram się zrozumieć za pomocą modułu Async dla NodeJS.NodeJS, Async forEachSeries Kolejność wykonywania
Mam następujący kod.
var a1 = [1,2,3,4,5,6,7,8];
async.forEachSeries(a1, function(n1, callback) {
console.log(n1);
var a2 = [10,11,12,13,14];
async.forEachSeries(a2, function(n2, callback) {
console.log(n1 + " " + n2);
callback();
});
callback();
});
chcę, aby proces powyższego kodu w taki sposób, że wydruk staje
1
1 10
1 11
1 12
1 13
1 14
2
2 10
2 11
2 12
2 13
2 14
3
3 10
3 11
3 12
3 13
3 14
.....
Ale zamiast ja dostaję coś takiego ..
1
1 10
2
2 10
1 11
3
3 10
2 11
1 12
....
Jak to naprawić?
Jeśli potrzebujesz wyjścia synchronicznego, dlaczego wykonujesz je asynchronicznie? – NilsH
hm. czy forEachSeries nie działa w sposób synchroniczny? – ericbae
Węzły 0.10.3 i 0.8.16 generują żądany wynik na moim Macu. Czy wyprowadzasz wyjście skryptu do pliku (lub innego programu)? Zmienia to zachowanie 'process.stdout', a co za tym idzie' console.log', co może skutkować różnymi wyjściami. A 'forEachSeries' jest synchroniczne, ponieważ następna iteracja zostanie wywołana dopiero po zakończeniu poprzedniego. – robertklep