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

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