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