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

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts

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