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

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