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

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