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

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