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

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