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

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