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