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

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