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

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