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

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