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

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