async无论我们在哪里接受Node样式的回调函数,异步都接受函数。但是,我们不向它们传递回调,而是使用返回值并处理所有的Promise拒绝或引发的错误
const async = require('async');
(async () => {
// 支持数组格式
let list = [{
'url': '1',
}, {
'url': '2',
}];
//数字10是并发数量
async.mapLimit(list, 10, async item => { // <- no callback!
let data = await toUrl(item);
return data; // <- return a value!
}, (err, contents) => {
if (err) throw err;
console.log(contents);
});
})();
async function toUrl(item) {
// 。。。 写处理逻辑
console.log(item);
return '处理完成';
}
文档来源:https://caolan.github.io/async/v3/