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

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