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