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

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