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

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