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

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