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