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

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