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