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