Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
lodash flattenDeep vs js native
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Browser:
Chrome 133
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
_.flattenDeep
18807174.0 Ops/sec
// Native
4307239.0 Ops/sec
Native(ES2019)
13471334.0 Ops/sec
native 2
4616019.5 Ops/sec
HTML Preparation code:
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.js"></script>
Script Preparation code:
var elements = [1, [2, [3, [4]], 5]]; const flattenDeep = (arr) => Array.isArray(arr) ? arr.reduce( (a, b) => a.concat(flattenDeep(b)) , []) : [arr]; const flattenDeepL = (arr) => arr.flatMap((subArray, index) => Array.isArray(subArray) ? flattenDeepL(subArray) : subArray);
Tests:
_.flattenDeep
_.flattenDeep(elements);
// Native
const flattenDeep = (arr) => Array.isArray(arr) ? arr.reduce( (a, b) => a.concat(flattenDeep(b)) , []) : [arr]; flattenDeep(elements)
Native(ES2019)
elements.flat(Infinity)
native 2
const flattenDeep = (arr) => arr.flatMap((subArray, index) => Array.isArray(subArray) ? flattenDeep(subArray) : subArray) flattenDeep(elements)