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