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

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