рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ (рдореИрдВрдиреЗ рдмрд╣реБрдд рдЬрд▓реНрдж рдмрд╛рдд рдХреА!)... (рдиреАрдЪреЗ рджреЗрдЦреЗрдВ)
рдореИрдВ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХреЗ рдмрд╛рдж рдХреЙрд▓рдмреИрдХ рдлреЗрдВрдХрдиреЗ рдХреЗ рд▓рд┐рдП .forEachOf рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдВрддрд┐рдо рдХреЙрд▓рдмреИрдХ рдХреЛ рддреАрд╕рд░реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ forEachOf рдХрднреА рднреА рдлреЗрдВрдХрд╛ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣рд╛рдБ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХреБрдЫ рдирдореВрдирд╛ рдХреЛрдб рд╣реИ:
var async = require('async');
var anArray = [];
var testObj = {
'a': '1',
'b': '2',
'c': '3'
};
async.forEachOf(testObj, function (elem, key, callback) {
console.log(elem);
anArray.push(elem);
}, function (err) {
if (err) {
console.error(err.message);
}
console.log("This line should be printed at the end.", anArray);
});
рдпрд╣рд╛рдВ рдпрд╣ рд░рдирдиреЗрдмрд▓ рдкрд░ рд╣реИ: http://code.runnable.com/VZELB92Qa1Y7JQuq/async-foreachof-node-js-not-working-2-for-callback
рдЕрдм рдореИрдВ рдпрд╣рд╛рдВ рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЧрд▓рдд рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕ рдкреНрд░рд╢реНрди рдХреЛ рд░реЗрдбрд┐рдЯ рдФрд░ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлрд╝реНрд▓реЛ рдкрд░ /r/node рдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдХреЛрдИ рдЙрдкрдпреЛрдЧреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИред рдореБрдЭрд╕реЗ рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реЛ рд░рд╣рд╛ рд╣реИ? рдпрд╣ рдореБрдЭреЗ рдкрд╛рдЧрд▓ рдмрдирд╛ рд░рд╣реА рд╣реИ!!!
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдореИрдВ 'рд╡рд╛рдкрд╕реА рдХреЙрд▓рдмреИрдХ ()' рдХрдерди рдЬреЛрдбрд╝рдирд╛ рднреВрд▓ рдЧрдпрд╛ рдерд╛ред рд╡рд┐рд╢реЗрд╖ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЬрд╣рд╛рдВ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛, рдореЗрд░реЗ рдкрд╛рд╕ рджреВрд╕рд░реА рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд╡рд┐рдзрд┐ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдореИрдВ рдпрд╣ 'рд╡рд╛рдкрд╕реА рдХреЙрд▓рдмреИрдХ ()' рдХрдерди рдХрд░рддрд╛ рд╣реВрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рджреВрд╕рд░реА рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд╡рд┐рдзрд┐ рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж рдХреЙрд▓рдмреИрдХ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдПрдХ рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рд╡рд╛рд╣ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдореИрдВ рдХреНрд╖рдорд╛рдкреНрд░рд╛рд░реНрдереА рд╣реВрдВред рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдмрдВрдж рдХрд░реЗрдВ!!!
рджреВрд╕рд░реА рдУрд░, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдХреЗ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛, рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ 'рд░рд┐рдЯрд░реНрди рдХреЙрд▓рдмреИрдХ ()' рдХрдерди рдХрд╛ рдареАрдХ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рдХреА рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрдореА рд╣реИ, рдФрд░ рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рдкрд░ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рд╣реИ-рдЗрд╕рд▓рд┐рдП рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдзреАрдорд╛, рдердХрд╛рдК рдФрд░ рдХрдард┐рди рд╣реИ!
рдпрд╛рд░ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рдмрд╛рдж 'рдХреЙрд▓рдмреИрдХ ()' рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
async.forEachOf(testObj, function (elem, key, callback) {
console.log(elem);
anArray.push(elem);
callback() //<<<<<<<<<
},...
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдпрд╛рд░ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рдмрд╛рдж 'рдХреЙрд▓рдмреИрдХ ()' рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред