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

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