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

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