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

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