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

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