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