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

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