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

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