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

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