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

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