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

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