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

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