All Projects → dg92 → Performance Analysis Js

dg92 / Performance Analysis Js

Map/Reduce/Filter/Find Vs For loop Vs For each Vs Lodash vs Ramda

Programming Languages

javascript
184084 projects - #8 most used programming language
es6
455 projects

Projects that are alternatives of or similar to Performance Analysis Js

Rambdax
Extended version of Rambda
Stars: ✭ 148 (-72.18%)
Mutual labels:  lodash, ramda, functional-programming
Rambda
Faster and smaller alternative to Ramda
Stars: ✭ 1,066 (+100.38%)
Mutual labels:  lodash, ramda, functional-programming
Dash
Functional programming library for PHP. Inspired by Underscore, Lodash, and Ramda.
Stars: ✭ 84 (-84.21%)
Mutual labels:  lodash, ramda, functional-programming
Utils.js
Fast, small and purely functional utility library
Stars: ✭ 102 (-80.83%)
Mutual labels:  lodash, ramda
Graphql Lodash
🛠 Data manipulation for GraphQL queries with lodash syntax
Stars: ✭ 1,003 (+88.53%)
Mutual labels:  lodash, functional-programming
List
🐆 An immutable list with unmatched performance and a comprehensive functional API.
Stars: ✭ 1,604 (+201.5%)
Mutual labels:  ramda, functional-programming
R.apex
Functional utility library for Apex
Stars: ✭ 80 (-84.96%)
Mutual labels:  ramda, lodash
leaflet-tag-filter-button
Adds tag filter control for layers (marker, geojson features etc.) to LeafLet.
Stars: ✭ 48 (-90.98%)
Mutual labels:  map, filter
linq
A familiar set of functions that operate on JavaScript iterables (ES2015+) in a similar way to .NET's LINQ does with enumerables.
Stars: ✭ 39 (-92.67%)
Mutual labels:  map, filter
stream
Go Stream, like Java 8 Stream.
Stars: ✭ 60 (-88.72%)
Mutual labels:  map, filter
utils.js
Fast, small and purely functional utility library
Stars: ✭ 132 (-75.19%)
Mutual labels:  ramda, lodash
eslint-config-adjunct
A reasonable collection of plugins to use alongside your main esLint configuration
Stars: ✭ 39 (-92.67%)
Mutual labels:  ramda, lodash
Zebras
Data analysis library for JavaScript built with Ramda
Stars: ✭ 192 (-63.91%)
Mutual labels:  ramda, functional-programming
Ramda Extension
🤘Utility library for functional JavaScript. With ❤️ to Ramda.
Stars: ✭ 139 (-73.87%)
Mutual labels:  ramda, functional-programming
Lambda
🔮 Estudos obscuros de programação funcional
Stars: ✭ 297 (-44.17%)
Mutual labels:  ramda, functional-programming
Ramda Debug
🐏 Debugging for Ramda.
Stars: ✭ 113 (-78.76%)
Mutual labels:  ramda, functional-programming
Ramtuary
Ramda + Ramda Fantasy + Sanctuary REPL 🌿
Stars: ✭ 72 (-86.47%)
Mutual labels:  ramda, functional-programming
Imlazy
😴 Functional programming with lazy immutable iterables
Stars: ✭ 89 (-83.27%)
Mutual labels:  ramda, functional-programming
map-keys-deep-lodash
Map/rename keys recursively with Lodash
Stars: ✭ 16 (-96.99%)
Mutual labels:  map, lodash
Rationale
Ramda inspired library of helper functions for ReasonML
Stars: ✭ 275 (-48.31%)
Mutual labels:  lodash, ramda

Performance-Analysis

Comparing native JavaScript array methods map, reduce, filter, and find against for loop, forEach loop and lodash methods. The analysis uses basic operations and heavy data manipulation to analyze the execution speed of each method.

To run

  1. Run npm install
  2. Generate the data for the tests by running npm run seed.
    • The default array is 10000 elements in length. You can create an array of a custom length by passing the desired size as an arugment, like so npm run seed 100000.
  3. For a small data set performance report run npm run t:s.
    • This runs the analysis on the first 5 elements of the array.
  4. For a performance report on the whole array run npm run t:l

To test your own function create them in the formulas.js file.

Results for small data set of array size 5 - 1000

small_data_set_result

Results for mid data set of array size 3000 - 20000

mid_data_set_result

Results for large data set of array size 50000 - 1000000

large_data_set_result

Coming Soon

  1. Ramda.js test
  2. Caching (inline, warm) considerations
  3. GC considerations

Note

  1. These results are computed using Node V8 v5.8.283.41
  2. These result does not consider the JIT, inline caching, hidden classes, deoptimizations, garbage collection, pretenuring etc.
  3. Result may vary as per env's.
  4. Red colour highlight in the above images is just for reference, will soon change.

Discussion/Posts

  1. https://news.ycombinator.com/item?id=17050798
  2. https://medium.com/@ideepak.jsd/javascript-performance-test-for-vs-for-each-vs-map-reduce-filter-find-32c1113f19d7
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].