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

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