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

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