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

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