Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Lodash vs Ramda vs Remeda
(version: 1)
Comparing performance of:
Lodash vs Ramda vs Remeda
Created:
6 months ago
by:
Guest
Jump to the latest result
HTML Preparation code:
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js'></script> <script src='https://cdnjs.cloudflare.com/ajax/libs/ramda/0.31.3/ramda.min.js'></script>
Script Preparation code:
const N = 80_000; const DATA = Array.from({ length: N }, (_, i) => ({ id: i, active: (i & 1) === 0, // half active score: (i * 7) % 100, // 0..99 group: (i % 25), // 25 groups name: "user_" + i, tags: [i % 5, i % 7, i % 11], })); window.DATA = DATA; // ---- Remeda loader: attach to window.Rm (avoids clash with Ramda's R) window.RmReady = (async () => { if (!window.Rm) { const m = await import('https://esm.sh/remeda@2'); // Expose the namespace under 'Rm' to avoid 'R' collision with Ramda window.Rm = m; } })();
Tests:
Lodash
const res = _(DATA) .filter(u => u.active && u.score > 50) .groupBy('group') .mapValues(arr => _.sumBy(arr, 'score')) .value();
Ramda
// R.pipe is available globally from ramda const res = R.pipe( R.filter(u => u.active && u.score > 50), R.groupBy(u => String(u.group)), R.map(arr => R.sum(R.pluck('score', arr))) )(DATA);
Remeda
// Ensure Remeda is present if (!window.Rm) throw new Error("Remeda not loaded"); // Use Rm.pipe to avoid clashing with Ramda's R const Rm = window.Rm; const res = Rm.pipe( DATA, Rm.filter(u => u.active && u.score > 50), Rm.groupBy(u => String(u.group)), Rm.mapValues(arr => Rm.sumBy(arr, x => x.score)) );
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (3)
Previous results
Fork
Test case name
Result
Lodash
Ramda
Remeda
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
one month ago
)
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36
Browser/OS:
Chrome 145 on Mac OS X 10.15.7
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
Lodash
920.5 Ops/sec
Ramda
677.3 Ops/sec
Remeda
477.9 Ops/sec
Related benchmarks:
multiple-re-vs-one
lodash forEach vs ramda forEach vs array.forEach vs for loop
Ramda -> Lodash -> Native -> for Loop -> Transdusers
Map - Native vs Lodash vs Ramda vs Sanctuary 10,000
Immer/Ramda
GroupBy 100k: Ramda, Underscore, Array.reduce
Ramda forEachObjIndexed vs Native Object.values + Array.map
Lodash Uniq vs Javascript Set vs Ramda
ramda vs javascript (improved)
Comments
Confirm delete:
Do you really want to delete benchmark?