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