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

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