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