Published:
·
LastMod: October 22, 2022
·
191 words
each 🔗
数组循环调用iterator方法进行处理
_each方法对数组进行遍历, 内部使用iterator进行调用
only_once方法保证函数只会被调用一次
done方法内部进行计数,和数组长度进行比对,执行成功后会调用回调函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| async.each = function (arr, iterator, callback) {
callback = callback || function () {};
if (!arr.length) {
return callback();
}
var completed = 0;
_each(arr, function (x) {
iterator(x, only_once(done) );
});
function done(err) {
if (err) {
callback(err);
callback = function () {};
} else {
completed += 1;
if (completed >= arr.length) {
callback();
}
}
}
};
|