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

README.md

Neo-Async

npm Travis Status Coverage Status download

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