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