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

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