<p>async.map, рд▓реЗрдХрд┐рди async.eachOf . рдЬреИрд╕реА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рд╕рд╛рде</p>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 23 рдЬрдире░ 2017  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: caolan/async

рд╕рднреА рдХреЛ рдкреНрд░рдгрд╛рдо

рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рджреЗрдЦрдХрд░, рдореИрдВ async.map рдвреВрдВрдв рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдкреБрдирд░рд╛рд╡рд░реНрддрдХ рдХреА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЙрд▓рдмреИрдХ рдХреЛ рдкрд╛рд╕ рдХрд░ рджреА рдЧрдИ рд╣реИред
async.each , рдПрдирд╛рд▓реЙрдЧ async.eachOf ред рд▓реЗрдХрд┐рди рдореБрдЭреЗ async.mapOf рдпрд╛ рдХреНрдпрд╛ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред

рдХреНрдпрд╛ рд╡рд╣рд╛рдВ рдРрд╕реА рдХреЛрдИ рдЪреАрдЬ рд╣реИ? рдЕрдЧрд░ рдЖрдкрдХреЛ рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рдЪрд╛рд╣рд┐рдП рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ, рдзрдиреНрдпрд╡рд╛рдж!

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рдо рдареАрдХ рд╣реИрдВ рд╡реИрд╕реЗ рднреА рдпрд╣рд╛рдБ рдореИрдВрдиреЗ рдбреЗрдЯрд╛ рд╡рд╛рдкрд╕ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ:

var async = require('async');

async.forEachOf(['a', 'b', 'c'], function () {

  console.log(arguments[1]);
});

рд╕рднреА 8 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЕрд░реЗ :) рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЗрд╕ рдЙрддреНрддрд░ рдХреЗ рд╕рдорд╛рди рдЪрд╛рд╣рд┐рдП - http://stackoverflow.com/a/31821896 ред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рдЙрдкрдирд╛рдо/рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╡рд┐рдзрд┐ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ async.forEachOf рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рдЬрдм рднреА рдЖрдк async.mapOf рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдкрдХреЛ рд╡рд╣ рдирд╛рдо рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рд▓рдЧрддрд╛ рд╣реИред

@jpalala рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдЬреЛ! рдореБрдЭреЗ рдЗрд╕реЗ рдПрдХ рд╢реЙрдЯ рджреЗрдиреЗ рджреЛ, рдЪреАрдЬреЗрдВ рдХреИрд╕реА рдЪрд▓ рд░рд╣реА рд╣реИрдВ?

рдХреНрдпрд╛ async.forEachOf рдЕрдВрддрд┐рдо рдХреЙрд▓рдмреИрдХ рдЬреИрд╕реЗ async.map рдбреЗрдЯрд╛ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ?

рд╣рдо рдареАрдХ рд╣реИрдВ рд╡реИрд╕реЗ рднреА рдпрд╣рд╛рдБ рдореИрдВрдиреЗ рдбреЗрдЯрд╛ рд╡рд╛рдкрд╕ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ:

var async = require('async');

async.forEachOf(['a', 'b', 'c'], function () {

  console.log(arguments[1]);
});

~ forEachOf рдФрд░ рдкрд░рд┐рд╡рд╛рд░ рдХреЙрд▓рдмреИрдХ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдкрд╛рд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдХреБрдВрдЬреА рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдХреБрдЫ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:~

async.forEach(_.entries(obj), ( [key, value], next ) => {
  // do whatever
}, done);

~рдзреНрдпрд╛рди рд░рдЦреЗрдВ, рдпрд╣ рдПрдХ рд╕рд░рдгреА рд▓реМрдЯрд╛рдПрдЧрд╛, рдФрд░ рдЖрджреЗрд╢ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реЛрдЧреАред рдЖрдкрдХреЛ рдкрд░рд┐рдгрд╛рдо рд╡рд╕реНрддреБ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред~

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: mapValues рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдореИрдкрд╡реИрд▓реНрдпреВ рдХреНрдпреЛрдВ рдирд╣реАрдВ?

async.mapValues( (val, key, next) => {
    // do whatever
}, (err, obj) => {
    let result = _.toArray(obj);
});

@ ex1st рд╣реБрд╣ рдЬреЛ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ!

рд╣рд╛рдБ, рдореИрдВрдиреЗ рдЬреЛ рдХрд╣рд╛ рдЙрд╕рдХреА рдЕрд╡рд╣реЗрд▓рдирд╛ рдХрд░реЗрдВ, mapValues рдареАрдХ рд╡рд╣реА рд╣реИ рдЬреЛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

avieru picture avieru  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Saevon picture Saevon  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

endbay picture endbay  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

parky128 picture parky128  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

trvra picture trvra  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ