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

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