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

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