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

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