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

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