liangjiahao 8f813121f8 添加查看按钮的窗口 3 vuotta sitten
..
LICENSE fcedc92fa0 完成了基础 3 vuotta sitten
README.md fcedc92fa0 完成了基础 3 vuotta sitten
all.js fcedc92fa0 完成了基础 3 vuotta sitten
allLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
allSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
angelFall.js fcedc92fa0 完成了基础 3 vuotta sitten
any.js fcedc92fa0 完成了基础 3 vuotta sitten
anyLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
anySeries.js fcedc92fa0 完成了基础 3 vuotta sitten
apply.js fcedc92fa0 完成了基础 3 vuotta sitten
applyEach.js fcedc92fa0 完成了基础 3 vuotta sitten
applyEachSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
async.js fcedc92fa0 完成了基础 3 vuotta sitten
async.min.js fcedc92fa0 完成了基础 3 vuotta sitten
asyncify.js fcedc92fa0 完成了基础 3 vuotta sitten
auto.js fcedc92fa0 完成了基础 3 vuotta sitten
autoInject.js fcedc92fa0 完成了基础 3 vuotta sitten
cargo.js fcedc92fa0 完成了基础 3 vuotta sitten
compose.js fcedc92fa0 完成了基础 3 vuotta sitten
concat.js fcedc92fa0 完成了基础 3 vuotta sitten
concatLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
concatSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
constant.js fcedc92fa0 完成了基础 3 vuotta sitten
createLogger.js fcedc92fa0 完成了基础 3 vuotta sitten
detect.js fcedc92fa0 完成了基础 3 vuotta sitten
detectLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
detectSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
dir.js fcedc92fa0 完成了基础 3 vuotta sitten
doDuring.js fcedc92fa0 完成了基础 3 vuotta sitten
doUntil.js fcedc92fa0 完成了基础 3 vuotta sitten
doWhilst.js fcedc92fa0 完成了基础 3 vuotta sitten
during.js fcedc92fa0 完成了基础 3 vuotta sitten
each.js fcedc92fa0 完成了基础 3 vuotta sitten
eachLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
eachOf.js fcedc92fa0 完成了基础 3 vuotta sitten
eachOfLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
eachOfSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
eachSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
ensureAsync.js fcedc92fa0 完成了基础 3 vuotta sitten
every.js fcedc92fa0 完成了基础 3 vuotta sitten
everyLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
everySeries.js fcedc92fa0 完成了基础 3 vuotta sitten
fast.js fcedc92fa0 完成了基础 3 vuotta sitten
filter.js fcedc92fa0 完成了基础 3 vuotta sitten
filterLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
filterSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
find.js fcedc92fa0 完成了基础 3 vuotta sitten
findLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
findSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
foldl.js fcedc92fa0 完成了基础 3 vuotta sitten
foldr.js fcedc92fa0 完成了基础 3 vuotta sitten
forEach.js fcedc92fa0 完成了基础 3 vuotta sitten
forEachLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
forEachOf.js fcedc92fa0 完成了基础 3 vuotta sitten
forEachOfLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
forEachOfSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
forEachSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
forever.js fcedc92fa0 完成了基础 3 vuotta sitten
groupBy.js fcedc92fa0 完成了基础 3 vuotta sitten
groupByLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
groupBySeries.js fcedc92fa0 完成了基础 3 vuotta sitten
inject.js fcedc92fa0 完成了基础 3 vuotta sitten
iterator.js fcedc92fa0 完成了基础 3 vuotta sitten
log.js fcedc92fa0 完成了基础 3 vuotta sitten
map.js fcedc92fa0 完成了基础 3 vuotta sitten
mapLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
mapSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
mapValues.js fcedc92fa0 完成了基础 3 vuotta sitten
mapValuesLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
mapValuesSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
memoize.js fcedc92fa0 完成了基础 3 vuotta sitten
nextTick.js fcedc92fa0 完成了基础 3 vuotta sitten
omit.js fcedc92fa0 完成了基础 3 vuotta sitten
omitLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
omitSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
package.json 8f813121f8 添加查看按钮的窗口 3 vuotta sitten
parallel.js fcedc92fa0 完成了基础 3 vuotta sitten
parallelLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
pick.js fcedc92fa0 完成了基础 3 vuotta sitten
pickLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
pickSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
priorityQueue.js fcedc92fa0 完成了基础 3 vuotta sitten
queue.js fcedc92fa0 完成了基础 3 vuotta sitten
race.js fcedc92fa0 完成了基础 3 vuotta sitten
reduce.js fcedc92fa0 完成了基础 3 vuotta sitten
reduceRight.js fcedc92fa0 完成了基础 3 vuotta sitten
reflect.js fcedc92fa0 完成了基础 3 vuotta sitten
reflectAll.js fcedc92fa0 完成了基础 3 vuotta sitten
reject.js fcedc92fa0 完成了基础 3 vuotta sitten
rejectLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
rejectSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
retry.js fcedc92fa0 完成了基础 3 vuotta sitten
retryable.js fcedc92fa0 完成了基础 3 vuotta sitten
safe.js fcedc92fa0 完成了基础 3 vuotta sitten
select.js fcedc92fa0 完成了基础 3 vuotta sitten
selectLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
selectSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
seq.js fcedc92fa0 完成了基础 3 vuotta sitten
series.js fcedc92fa0 完成了基础 3 vuotta sitten
setImmediate.js fcedc92fa0 完成了基础 3 vuotta sitten
some.js fcedc92fa0 完成了基础 3 vuotta sitten
someLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
someSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
sortBy.js fcedc92fa0 完成了基础 3 vuotta sitten
sortByLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
sortBySeries.js fcedc92fa0 完成了基础 3 vuotta sitten
timeout.js fcedc92fa0 完成了基础 3 vuotta sitten
times.js fcedc92fa0 完成了基础 3 vuotta sitten
timesLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
timesSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
transform.js fcedc92fa0 完成了基础 3 vuotta sitten
transformLimit.js fcedc92fa0 完成了基础 3 vuotta sitten
transformSeries.js fcedc92fa0 完成了基础 3 vuotta sitten
tryEach.js fcedc92fa0 完成了基础 3 vuotta sitten
unmemoize.js fcedc92fa0 完成了基础 3 vuotta sitten
until.js fcedc92fa0 完成了基础 3 vuotta sitten
waterfall.js fcedc92fa0 完成了基础 3 vuotta sitten
whilst.js fcedc92fa0 完成了基础 3 vuotta sitten
wrapSync.js fcedc92fa0 完成了基础 3 vuotta sitten

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