cmy a6e36702ec 2023-3-1 il y a 2 ans
..
LICENSE a6e36702ec 2023-3-1 il y a 2 ans
README.md a6e36702ec 2023-3-1 il y a 2 ans
all.js a6e36702ec 2023-3-1 il y a 2 ans
allLimit.js a6e36702ec 2023-3-1 il y a 2 ans
allSeries.js a6e36702ec 2023-3-1 il y a 2 ans
angelFall.js a6e36702ec 2023-3-1 il y a 2 ans
any.js a6e36702ec 2023-3-1 il y a 2 ans
anyLimit.js a6e36702ec 2023-3-1 il y a 2 ans
anySeries.js a6e36702ec 2023-3-1 il y a 2 ans
apply.js a6e36702ec 2023-3-1 il y a 2 ans
applyEach.js a6e36702ec 2023-3-1 il y a 2 ans
applyEachSeries.js a6e36702ec 2023-3-1 il y a 2 ans
async.js a6e36702ec 2023-3-1 il y a 2 ans
async.min.js a6e36702ec 2023-3-1 il y a 2 ans
asyncify.js a6e36702ec 2023-3-1 il y a 2 ans
auto.js a6e36702ec 2023-3-1 il y a 2 ans
autoInject.js a6e36702ec 2023-3-1 il y a 2 ans
cargo.js a6e36702ec 2023-3-1 il y a 2 ans
compose.js a6e36702ec 2023-3-1 il y a 2 ans
concat.js a6e36702ec 2023-3-1 il y a 2 ans
concatLimit.js a6e36702ec 2023-3-1 il y a 2 ans
concatSeries.js a6e36702ec 2023-3-1 il y a 2 ans
constant.js a6e36702ec 2023-3-1 il y a 2 ans
createLogger.js a6e36702ec 2023-3-1 il y a 2 ans
detect.js a6e36702ec 2023-3-1 il y a 2 ans
detectLimit.js a6e36702ec 2023-3-1 il y a 2 ans
detectSeries.js a6e36702ec 2023-3-1 il y a 2 ans
dir.js a6e36702ec 2023-3-1 il y a 2 ans
doDuring.js a6e36702ec 2023-3-1 il y a 2 ans
doUntil.js a6e36702ec 2023-3-1 il y a 2 ans
doWhilst.js a6e36702ec 2023-3-1 il y a 2 ans
during.js a6e36702ec 2023-3-1 il y a 2 ans
each.js a6e36702ec 2023-3-1 il y a 2 ans
eachLimit.js a6e36702ec 2023-3-1 il y a 2 ans
eachOf.js a6e36702ec 2023-3-1 il y a 2 ans
eachOfLimit.js a6e36702ec 2023-3-1 il y a 2 ans
eachOfSeries.js a6e36702ec 2023-3-1 il y a 2 ans
eachSeries.js a6e36702ec 2023-3-1 il y a 2 ans
ensureAsync.js a6e36702ec 2023-3-1 il y a 2 ans
every.js a6e36702ec 2023-3-1 il y a 2 ans
everyLimit.js a6e36702ec 2023-3-1 il y a 2 ans
everySeries.js a6e36702ec 2023-3-1 il y a 2 ans
fast.js a6e36702ec 2023-3-1 il y a 2 ans
filter.js a6e36702ec 2023-3-1 il y a 2 ans
filterLimit.js a6e36702ec 2023-3-1 il y a 2 ans
filterSeries.js a6e36702ec 2023-3-1 il y a 2 ans
find.js a6e36702ec 2023-3-1 il y a 2 ans
findLimit.js a6e36702ec 2023-3-1 il y a 2 ans
findSeries.js a6e36702ec 2023-3-1 il y a 2 ans
foldl.js a6e36702ec 2023-3-1 il y a 2 ans
foldr.js a6e36702ec 2023-3-1 il y a 2 ans
forEach.js a6e36702ec 2023-3-1 il y a 2 ans
forEachLimit.js a6e36702ec 2023-3-1 il y a 2 ans
forEachOf.js a6e36702ec 2023-3-1 il y a 2 ans
forEachOfLimit.js a6e36702ec 2023-3-1 il y a 2 ans
forEachOfSeries.js a6e36702ec 2023-3-1 il y a 2 ans
forEachSeries.js a6e36702ec 2023-3-1 il y a 2 ans
forever.js a6e36702ec 2023-3-1 il y a 2 ans
groupBy.js a6e36702ec 2023-3-1 il y a 2 ans
groupByLimit.js a6e36702ec 2023-3-1 il y a 2 ans
groupBySeries.js a6e36702ec 2023-3-1 il y a 2 ans
inject.js a6e36702ec 2023-3-1 il y a 2 ans
iterator.js a6e36702ec 2023-3-1 il y a 2 ans
log.js a6e36702ec 2023-3-1 il y a 2 ans
map.js a6e36702ec 2023-3-1 il y a 2 ans
mapLimit.js a6e36702ec 2023-3-1 il y a 2 ans
mapSeries.js a6e36702ec 2023-3-1 il y a 2 ans
mapValues.js a6e36702ec 2023-3-1 il y a 2 ans
mapValuesLimit.js a6e36702ec 2023-3-1 il y a 2 ans
mapValuesSeries.js a6e36702ec 2023-3-1 il y a 2 ans
memoize.js a6e36702ec 2023-3-1 il y a 2 ans
nextTick.js a6e36702ec 2023-3-1 il y a 2 ans
omit.js a6e36702ec 2023-3-1 il y a 2 ans
omitLimit.js a6e36702ec 2023-3-1 il y a 2 ans
omitSeries.js a6e36702ec 2023-3-1 il y a 2 ans
package.json a6e36702ec 2023-3-1 il y a 2 ans
parallel.js a6e36702ec 2023-3-1 il y a 2 ans
parallelLimit.js a6e36702ec 2023-3-1 il y a 2 ans
pick.js a6e36702ec 2023-3-1 il y a 2 ans
pickLimit.js a6e36702ec 2023-3-1 il y a 2 ans
pickSeries.js a6e36702ec 2023-3-1 il y a 2 ans
priorityQueue.js a6e36702ec 2023-3-1 il y a 2 ans
queue.js a6e36702ec 2023-3-1 il y a 2 ans
race.js a6e36702ec 2023-3-1 il y a 2 ans
reduce.js a6e36702ec 2023-3-1 il y a 2 ans
reduceRight.js a6e36702ec 2023-3-1 il y a 2 ans
reflect.js a6e36702ec 2023-3-1 il y a 2 ans
reflectAll.js a6e36702ec 2023-3-1 il y a 2 ans
reject.js a6e36702ec 2023-3-1 il y a 2 ans
rejectLimit.js a6e36702ec 2023-3-1 il y a 2 ans
rejectSeries.js a6e36702ec 2023-3-1 il y a 2 ans
retry.js a6e36702ec 2023-3-1 il y a 2 ans
retryable.js a6e36702ec 2023-3-1 il y a 2 ans
safe.js a6e36702ec 2023-3-1 il y a 2 ans
select.js a6e36702ec 2023-3-1 il y a 2 ans
selectLimit.js a6e36702ec 2023-3-1 il y a 2 ans
selectSeries.js a6e36702ec 2023-3-1 il y a 2 ans
seq.js a6e36702ec 2023-3-1 il y a 2 ans
series.js a6e36702ec 2023-3-1 il y a 2 ans
setImmediate.js a6e36702ec 2023-3-1 il y a 2 ans
some.js a6e36702ec 2023-3-1 il y a 2 ans
someLimit.js a6e36702ec 2023-3-1 il y a 2 ans
someSeries.js a6e36702ec 2023-3-1 il y a 2 ans
sortBy.js a6e36702ec 2023-3-1 il y a 2 ans
sortByLimit.js a6e36702ec 2023-3-1 il y a 2 ans
sortBySeries.js a6e36702ec 2023-3-1 il y a 2 ans
timeout.js a6e36702ec 2023-3-1 il y a 2 ans
times.js a6e36702ec 2023-3-1 il y a 2 ans
timesLimit.js a6e36702ec 2023-3-1 il y a 2 ans
timesSeries.js a6e36702ec 2023-3-1 il y a 2 ans
transform.js a6e36702ec 2023-3-1 il y a 2 ans
transformLimit.js a6e36702ec 2023-3-1 il y a 2 ans
transformSeries.js a6e36702ec 2023-3-1 il y a 2 ans
tryEach.js a6e36702ec 2023-3-1 il y a 2 ans
unmemoize.js a6e36702ec 2023-3-1 il y a 2 ans
until.js a6e36702ec 2023-3-1 il y a 2 ans
waterfall.js a6e36702ec 2023-3-1 il y a 2 ans
whilst.js a6e36702ec 2023-3-1 il y a 2 ans
wrapSync.js a6e36702ec 2023-3-1 il y a 2 ans

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts FOSSA

Neo-Async is thought to be used as a drop-in replacement for Async, it almost fully covers its functionality and runs faster.

Benchmark is here!

Bluebird's benchmark is here!

Code Coverage

coverage

Installation

In a browser

<script src="async.min.js"></script>

In an AMD loader

require(['async'], function(async) {});

Promise and async/await

I recommend to use Aigle.

It is optimized for Promise handling and has almost the same functionality as neo-async.

Node.js

standard

$ npm install neo-async
var async = require('neo-async');

replacement

$ npm install neo-async
$ ln -s ./node_modules/neo-async ./node_modules/async
var async = require('async');

Bower

bower install neo-async

Feature

JSDoc

* not in Async

Collections

Control Flow

Utils

Mode

Benchmark

Benchmark: Async vs Neo-Async

How to check

$ node perf

Environment

  • Darwin 17.3.0 x64
  • Node.js v8.9.4
  • async v2.6.0
  • neo-async v2.5.0
  • benchmark v2.1.4

Result

The value is the ratio (Neo-Async/Async) of the average speed.

Collections

function benchmark
each/forEach 2.43
eachSeries/forEachSeries 1.75
eachLimit/forEachLimit 1.68
eachOf 3.29
eachOfSeries 1.50
eachOfLimit 1.59
map 3.95
mapSeries 1.81
mapLimit 1.27
mapValues 2.73
mapValuesSeries 1.59
mapValuesLimit 1.23
filter 3.00
filterSeries 1.74
filterLimit 1.17
reject 4.59
rejectSeries 2.31
rejectLimit 1.58
detect 4.30
detectSeries 1.86
detectLimit 1.32
reduce 1.82
transform 2.46
sortBy 4.08
some 2.19
someSeries 1.83
someLimit 1.32
every 2.09
everySeries 1.84
everyLimit 1.35
concat 3.79
concatSeries 4.45

Control Flow

funciton benchmark
parallel 2.93
series 1.96
waterfall 1.29
whilst 1.00
doWhilst 1.12
until 1.12
doUntil 1.12
during 1.18
doDuring 2.42
times 4.25
auto 1.97

License

FOSSA Status