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

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