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

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