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

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