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

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