mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-24 13:05:11 +08:00
# Conflicts: # jsowell-ui/.env.development # jsowell-ui/.env.staging # jsowell-ui/bin/build-sit.bat # jsowell-ui/bin/build.bat # jsowell-ui/src/api/adapayMember/adapayMember.js # jsowell-ui/src/api/pile/merchant.js # jsowell-ui/src/router/index.js # jsowell-ui/src/views/financial/financeDetail.vue # jsowell-ui/src/views/financial/merchant.vue # jsowell-ui/src/views/homeIndex/homeIndex.vue # jsowell-ui/src/views/login.vue # jsowell-ui/src/views/pile/basic/detail.vue # jsowell-ui/src/views/pile/station/components/SiteInfo.vue # jsowell-ui/src/views/pile/station/detail.vue # jsowell-ui/src/views/pile/station/orderReport.vue
30 lines
796 B
JavaScript
30 lines
796 B
JavaScript
'use strict';
|
|
|
|
module.exports = asyncForEach;
|
|
|
|
/**
|
|
* Simultaneously processes all items in the given array.
|
|
*
|
|
* @param {array} array - The array to iterate over
|
|
* @param {function} iterator - The function to call for each item in the array
|
|
* @param {function} done - The function to call when all iterators have completed
|
|
*/
|
|
function asyncForEach (array, iterator, done) {
|
|
if (array.length === 0) {
|
|
// NOTE: Normally a bad idea to mix sync and async, but it's safe here because
|
|
// of the way that this method is currently used by DirectoryReader.
|
|
done();
|
|
return;
|
|
}
|
|
|
|
// Simultaneously process all items in the array.
|
|
let pending = array.length;
|
|
array.forEach(item => {
|
|
iterator(item, () => {
|
|
if (--pending === 0) {
|
|
done();
|
|
}
|
|
});
|
|
});
|
|
}
|