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

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