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

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