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

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts

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