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

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