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

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts

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