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

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