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