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

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