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

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