郑柏铃 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