Javascript Async.js筛选阵列不工作
我尝试使用async的filter方法,但没有得到预期的结果Javascript Async.js筛选阵列不工作,javascript,node.js,async.js,Javascript,Node.js,Async.js,我尝试使用async的filter方法,但没有得到预期的结果 async.filter([1, 3, 5], function (item, done) { done(item > 1); }, function (results) { console.log(results); }); async.filter([1, 2, 3, 4, 5, 6], function(item, callback) { if (item
async.filter([1, 3, 5], function (item, done) {
done(item > 1);
}, function (results) {
console.log(results);
});
async.filter([1, 2, 3, 4, 5, 6], function(item, callback) {
if (item > 3) {
callback(true);
} else {
callback(false);
}
},
function (result) {
console.log("result: " + result);
});
输出是
真的
结果:正确
不是2个过滤数组,我缺少什么?我认为您应该使用一些不同的语法,就像这里指定的: 回调的结果应该是第二个参数(不是第一个参数):
callback(null,true)
例如:
async.filter([1, 3, 5], function (item, done) {
done(null, item > 1);
}, function (err, results) {
console.log(results);
});
async.filter([1, 2, 3, 4, 5, 6], function(item, callback) {
if (item > 3) {
callback(null, true);
} else {
callback(false);
}
},
function (err, result) {
console.log("result: " + result);
});