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

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