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

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