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

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