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

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