funkcji jest następująca:Czy map() w javascript jest synchroniczna?
[1,2,3].map(function (item)
{
console.log(item);
//return 'something';
});
Moja oczekiwane zachowanie jest coraz tylko 1 jako wyjścia, chyba że odkomentuj
//return 'something'
Ale ja naprawdę
1
2
3
Co robię źle?
UPDATE:
jestem testowania że z nodejs.
Naprawdę nie rozumiem.
var async = require("async");
[1,2,3].map(function (item)
{
console.log(item);
//return 'something';
});
async.map([1,2,3], function (item,callback)
{
console.log(item);
//callback(null,true)
}, function (err,result)
{
console.log(result);
}
);
Zarówno powrócić samo
1
2
3
I naprawdę chciałbym czekać, aż dostanę zwrot lub oddzwanianie do następny element jest wykonywany.
SOLVED
async.mapSeries([1,2,3], function (item,callback)
{
console.log(item);
//callback(null,true)
}, function (err,result)
{
console.log(result);
}
);
jest sposób, aby to zrobić.
Dlaczego to jest twoje "oczekiwane zachowanie"? – Alnitak
Jaką przeglądarkę próbujesz?dla google chrome otrzymuję wynik zgodnie z oczekiwaniami w obu przypadkach. – robieee
Uwaga: map wywołuje funkcję zwrotną raz dla każdego elementu w tablicy. To co mam w Google Chrome debugera: [1,2,3] .map (function (poz) { console.log (pozycja); // return 'coś'; }) 1 VM63: 4 2 VM63: 4 3 VM63: 4 [niezdefiniowane niezdefiniowane niezdefiniowane] [1,2,3] .map (funkcja (pozycja) { console.log (pozycja) zwrotny " coś "; }) 1 VM66: 4 2 VM66: 4 3 VM66: 4 [" coś "," coś "," coś "] – robieee