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