APPLE 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
..
LICENSE 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
README.md 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
all.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
allLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
allSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
angelFall.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
any.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
anyLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
anySeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
apply.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
applyEach.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
applyEachSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
async.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
async.min.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
asyncify.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
auto.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
autoInject.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
cargo.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
compose.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
concat.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
concatLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
concatSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
constant.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
createLogger.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
detect.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
detectLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
detectSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
dir.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
doDuring.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
doUntil.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
doWhilst.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
during.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
each.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
eachLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
eachOf.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
eachOfLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
eachOfSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
eachSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
ensureAsync.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
every.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
everyLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
everySeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
fast.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
filter.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
filterLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
filterSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
find.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
findLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
findSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
foldl.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
foldr.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forEach.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forEachLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forEachOf.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forEachOfLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forEachOfSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forEachSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
forever.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
groupBy.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
groupByLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
groupBySeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
inject.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
iterator.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
log.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
map.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
mapLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
mapSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
mapValues.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
mapValuesLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
mapValuesSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
memoize.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
nextTick.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
omit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
omitLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
omitSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
package.json 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
parallel.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
parallelLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
pick.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
pickLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
pickSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
priorityQueue.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
queue.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
race.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
reduce.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
reduceRight.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
reflect.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
reflectAll.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
reject.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
rejectLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
rejectSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
retry.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
retryable.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
safe.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
select.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
selectLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
selectSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
seq.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
series.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
setImmediate.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
some.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
someLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
someSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
sortBy.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
sortByLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
sortBySeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
timeout.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
times.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
timesLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
timesSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
transform.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
transformLimit.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
transformSeries.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
tryEach.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
unmemoize.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
until.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
waterfall.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
whilst.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos
wrapSync.js 323c2f1633 wesmiler 点什么广告 %!s(int64=3) %!d(string=hai) anos

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