npm stats
  • Search
  • About
  • Repo
  • Sponsor
  • more
    • Search
    • About
    • Repo
    • Sponsor

Made by Antonio Ramirez

neo-async

2.6.2

@suguru03

npmHomeRepoSnykSocket
Downloads:33728187
$ npm install neo-async
DailyWeeklyMonthlyYearly

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

  • each
  • eachSeries
  • eachLimit
  • forEach -> each
  • forEachSeries -> eachSeries
  • forEachLimit -> eachLimit
  • eachOf -> each
  • eachOfSeries -> eachSeries
  • eachOfLimit -> eachLimit
  • forEachOf -> each
  • forEachOfSeries -> eachSeries
  • eachOfLimit -> forEachLimit
  • map
  • mapSeries
  • mapLimit
  • mapValues
  • mapValuesSeries
  • mapValuesLimit
  • filter
  • filterSeries
  • filterLimit
  • select -> filter
  • selectSeries -> filterSeries
  • selectLimit -> filterLimit
  • reject
  • rejectSeries
  • rejectLimit
  • detect
  • detectSeries
  • detectLimit
  • find -> detect
  • findSeries -> detectSeries
  • findLimit -> detectLimit
  • pick *
  • pickSeries *
  • pickLimit *
  • omit *
  • omitSeries *
  • omitLimit *
  • reduce
  • inject -> reduce
  • foldl -> reduce
  • reduceRight
  • foldr -> reduceRight
  • transform
  • transformSeries *
  • transformLimit *
  • sortBy
  • sortBySeries *
  • sortByLimit *
  • some
  • someSeries
  • someLimit
  • any -> some
  • anySeries -> someSeries
  • anyLimit -> someLimit
  • every
  • everySeries
  • everyLimit
  • all -> every
  • allSeries -> every
  • allLimit -> every
  • concat
  • concatSeries
  • concatLimit *

Control Flow

  • parallel
  • series
  • parallelLimit
  • tryEach
  • waterfall
  • angelFall *
  • angelfall -> angelFall *
  • whilst
  • doWhilst
  • until
  • doUntil
  • during
  • doDuring
  • forever
  • compose
  • seq
  • applyEach
  • applyEachSeries
  • queue
  • priorityQueue
  • cargo
  • auto
  • autoInject
  • retry
  • retryable
  • iterator
  • times
  • timesSeries
  • timesLimit
  • race

Utils

  • apply
  • setImmediate
  • nextTick
  • memoize
  • unmemoize
  • ensureAsync
  • constant
  • asyncify
  • wrapSync -> asyncify
  • log
  • dir
  • timeout
  • reflect
  • reflectAll
  • createLogger

Mode

  • safe *
  • fast *

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

functionbenchmark
each/forEach2.43
eachSeries/forEachSeries1.75
eachLimit/forEachLimit1.68
eachOf3.29
eachOfSeries1.50
eachOfLimit1.59
map3.95
mapSeries1.81
mapLimit1.27
mapValues2.73
mapValuesSeries1.59
mapValuesLimit1.23
filter3.00
filterSeries1.74
filterLimit1.17
reject4.59
rejectSeries2.31
rejectLimit1.58
detect4.30
detectSeries1.86
detectLimit1.32
reduce1.82
transform2.46
sortBy4.08
some2.19
someSeries1.83
someLimit1.32
every2.09
everySeries1.84
everyLimit1.35
concat3.79
concatSeries4.45

Control Flow

funcitonbenchmark
parallel2.93
series1.96
waterfall1.29
whilst1.00
doWhilst1.12
until1.12
doUntil1.12
during1.18
doDuring2.42
times4.25
auto1.97

License

FOSSA Status