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

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