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