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

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