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

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts

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