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

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