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

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