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

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