weekend project to make a simple web app using Typescript/Ionic/Angular.
Vincent Sima 1517fc9a2f done 6 yıl önce
..
README.md done 6 yıl önce
all.js done 6 yıl önce
allLimit.js done 6 yıl önce
allSeries.js done 6 yıl önce
angelFall.js done 6 yıl önce
any.js done 6 yıl önce
anyLimit.js done 6 yıl önce
anySeries.js done 6 yıl önce
apply.js done 6 yıl önce
applyEach.js done 6 yıl önce
applyEachSeries.js done 6 yıl önce
async.js done 6 yıl önce
async.min.js done 6 yıl önce
asyncify.js done 6 yıl önce
auto.js done 6 yıl önce
autoInject.js done 6 yıl önce
cargo.js done 6 yıl önce
compose.js done 6 yıl önce
concat.js done 6 yıl önce
concatLimit.js done 6 yıl önce
concatSeries.js done 6 yıl önce
constant.js done 6 yıl önce
createLogger.js done 6 yıl önce
detect.js done 6 yıl önce
detectLimit.js done 6 yıl önce
detectSeries.js done 6 yıl önce
dir.js done 6 yıl önce
doDuring.js done 6 yıl önce
doUntil.js done 6 yıl önce
doWhilst.js done 6 yıl önce
during.js done 6 yıl önce
each.js done 6 yıl önce
eachLimit.js done 6 yıl önce
eachOf.js done 6 yıl önce
eachOfLimit.js done 6 yıl önce
eachOfSeries.js done 6 yıl önce
eachSeries.js done 6 yıl önce
ensureAsync.js done 6 yıl önce
every.js done 6 yıl önce
everyLimit.js done 6 yıl önce
everySeries.js done 6 yıl önce
fast.js done 6 yıl önce
filter.js done 6 yıl önce
filterLimit.js done 6 yıl önce
filterSeries.js done 6 yıl önce
find.js done 6 yıl önce
findLimit.js done 6 yıl önce
findSeries.js done 6 yıl önce
foldl.js done 6 yıl önce
foldr.js done 6 yıl önce
forEach.js done 6 yıl önce
forEachLimit.js done 6 yıl önce
forEachOf.js done 6 yıl önce
forEachOfLimit.js done 6 yıl önce
forEachOfSeries.js done 6 yıl önce
forEachSeries.js done 6 yıl önce
forever.js done 6 yıl önce
groupBy.js done 6 yıl önce
groupByLimit.js done 6 yıl önce
groupBySeries.js done 6 yıl önce
inject.js done 6 yıl önce
iterator.js done 6 yıl önce
log.js done 6 yıl önce
map.js done 6 yıl önce
mapLimit.js done 6 yıl önce
mapSeries.js done 6 yıl önce
mapValues.js done 6 yıl önce
mapValuesLimit.js done 6 yıl önce
mapValuesSeries.js done 6 yıl önce
memoize.js done 6 yıl önce
nextTick.js done 6 yıl önce
omit.js done 6 yıl önce
omitLimit.js done 6 yıl önce
omitSeries.js done 6 yıl önce
package.json done 6 yıl önce
parallel.js done 6 yıl önce
parallelLimit.js done 6 yıl önce
pick.js done 6 yıl önce
pickLimit.js done 6 yıl önce
pickSeries.js done 6 yıl önce
priorityQueue.js done 6 yıl önce
queue.js done 6 yıl önce
race.js done 6 yıl önce
reduce.js done 6 yıl önce
reduceRight.js done 6 yıl önce
reflect.js done 6 yıl önce
reflectAll.js done 6 yıl önce
reject.js done 6 yıl önce
rejectLimit.js done 6 yıl önce
rejectSeries.js done 6 yıl önce
retry.js done 6 yıl önce
retryable.js done 6 yıl önce
safe.js done 6 yıl önce
select.js done 6 yıl önce
selectLimit.js done 6 yıl önce
selectSeries.js done 6 yıl önce
seq.js done 6 yıl önce
series.js done 6 yıl önce
setImmediate.js done 6 yıl önce
some.js done 6 yıl önce
someLimit.js done 6 yıl önce
someSeries.js done 6 yıl önce
sortBy.js done 6 yıl önce
sortByLimit.js done 6 yıl önce
sortBySeries.js done 6 yıl önce
timeout.js done 6 yıl önce
times.js done 6 yıl önce
timesLimit.js done 6 yıl önce
timesSeries.js done 6 yıl önce
transform.js done 6 yıl önce
transformLimit.js done 6 yıl önce
transformSeries.js done 6 yıl önce
tryEach.js done 6 yıl önce
unmemoize.js done 6 yıl önce
until.js done 6 yıl önce
waterfall.js done 6 yıl önce
whilst.js done 6 yıl önce
wrapSync.js done 6 yıl önce

README.md

Neo-Async

npm Travis Status Coverage Status download

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