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

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