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