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