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

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