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

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