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

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