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