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

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