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

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