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

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