You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
rosh 459aece669 first commit 4 years ago
..
LICENSE first commit 4 years ago
README.md first commit 4 years ago
all.js first commit 4 years ago
allLimit.js first commit 4 years ago
allSeries.js first commit 4 years ago
angelFall.js first commit 4 years ago
any.js first commit 4 years ago
anyLimit.js first commit 4 years ago
anySeries.js first commit 4 years ago
apply.js first commit 4 years ago
applyEach.js first commit 4 years ago
applyEachSeries.js first commit 4 years ago
async.js first commit 4 years ago
async.min.js first commit 4 years ago
asyncify.js first commit 4 years ago
auto.js first commit 4 years ago
autoInject.js first commit 4 years ago
cargo.js first commit 4 years ago
compose.js first commit 4 years ago
concat.js first commit 4 years ago
concatLimit.js first commit 4 years ago
concatSeries.js first commit 4 years ago
constant.js first commit 4 years ago
createLogger.js first commit 4 years ago
detect.js first commit 4 years ago
detectLimit.js first commit 4 years ago
detectSeries.js first commit 4 years ago
dir.js first commit 4 years ago
doDuring.js first commit 4 years ago
doUntil.js first commit 4 years ago
doWhilst.js first commit 4 years ago
during.js first commit 4 years ago
each.js first commit 4 years ago
eachLimit.js first commit 4 years ago
eachOf.js first commit 4 years ago
eachOfLimit.js first commit 4 years ago
eachOfSeries.js first commit 4 years ago
eachSeries.js first commit 4 years ago
ensureAsync.js first commit 4 years ago
every.js first commit 4 years ago
everyLimit.js first commit 4 years ago
everySeries.js first commit 4 years ago
fast.js first commit 4 years ago
filter.js first commit 4 years ago
filterLimit.js first commit 4 years ago
filterSeries.js first commit 4 years ago
find.js first commit 4 years ago
findLimit.js first commit 4 years ago
findSeries.js first commit 4 years ago
foldl.js first commit 4 years ago
foldr.js first commit 4 years ago
forEach.js first commit 4 years ago
forEachLimit.js first commit 4 years ago
forEachOf.js first commit 4 years ago
forEachOfLimit.js first commit 4 years ago
forEachOfSeries.js first commit 4 years ago
forEachSeries.js first commit 4 years ago
forever.js first commit 4 years ago
groupBy.js first commit 4 years ago
groupByLimit.js first commit 4 years ago
groupBySeries.js first commit 4 years ago
inject.js first commit 4 years ago
iterator.js first commit 4 years ago
log.js first commit 4 years ago
map.js first commit 4 years ago
mapLimit.js first commit 4 years ago
mapSeries.js first commit 4 years ago
mapValues.js first commit 4 years ago
mapValuesLimit.js first commit 4 years ago
mapValuesSeries.js first commit 4 years ago
memoize.js first commit 4 years ago
nextTick.js first commit 4 years ago
omit.js first commit 4 years ago
omitLimit.js first commit 4 years ago
omitSeries.js first commit 4 years ago
package.json first commit 4 years ago
parallel.js first commit 4 years ago
parallelLimit.js first commit 4 years ago
pick.js first commit 4 years ago
pickLimit.js first commit 4 years ago
pickSeries.js first commit 4 years ago
priorityQueue.js first commit 4 years ago
queue.js first commit 4 years ago
race.js first commit 4 years ago
reduce.js first commit 4 years ago
reduceRight.js first commit 4 years ago
reflect.js first commit 4 years ago
reflectAll.js first commit 4 years ago
reject.js first commit 4 years ago
rejectLimit.js first commit 4 years ago
rejectSeries.js first commit 4 years ago
retry.js first commit 4 years ago
retryable.js first commit 4 years ago
safe.js first commit 4 years ago
select.js first commit 4 years ago
selectLimit.js first commit 4 years ago
selectSeries.js first commit 4 years ago
seq.js first commit 4 years ago
series.js first commit 4 years ago
setImmediate.js first commit 4 years ago
some.js first commit 4 years ago
someLimit.js first commit 4 years ago
someSeries.js first commit 4 years ago
sortBy.js first commit 4 years ago
sortByLimit.js first commit 4 years ago
sortBySeries.js first commit 4 years ago
timeout.js first commit 4 years ago
times.js first commit 4 years ago
timesLimit.js first commit 4 years ago
timesSeries.js first commit 4 years ago
transform.js first commit 4 years ago
transformLimit.js first commit 4 years ago
transformSeries.js first commit 4 years ago
tryEach.js first commit 4 years ago
unmemoize.js first commit 4 years ago
until.js first commit 4 years ago
waterfall.js first commit 4 years ago
whilst.js first commit 4 years ago
wrapSync.js first commit 4 years ago

README.md

Neo-Async

npm Travis Status Coverage Status download Code Quality: Javascript 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