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