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

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