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

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