async.js 版本兼容问题 async.filter举例

async3.x 和async2.6.1 版本下

const files = ['dir1/file1.txt','dir2/file3.txt','dir3/file6.txt'];
// Using callbacks
async.filter(
files,
function(file, callback){
    callback(null, !err);
},
function(err, results) {
   if(err) {
       console.log(err);
   } else {
       console.log(results);
   }
});

 

1.x版本 1.5为例

const files = ['dir1/file1.txt','dir2/file3.txt','dir3/file6.txt'];
// Using callbacks
async.filter(
files,
function(file, callback){
    callback(file);
},
function(results) {
    console.log(results);
});

 

1.x版本的async.filter callback函数是不需要返回err的 callback(xxx),而其它大部分方法 map eachSeries waterfall都是callback(err,xx),挺坑的

貌似在更高版本做了统一

['file1','file2','file3']
posted @ 2022-04-29 10:24  谁凭花解语  阅读(118)  评论(0编辑  收藏  举报