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