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

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