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

README.md

Neo-Async

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