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

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