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