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

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