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

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