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

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