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