Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Lodash CloneDeep vs Immer Produce on larger array
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (iPad; CPU OS 18_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/131.0.6778.154 Mobile/15E148 Safari/604.1
Browser:
Chrome Mobile iOS 131
Operating system:
iOS 18.1.1
Device Platform:
Tablet
Date tested:
one year ago
Test name
Executions per second
Produce
407677.3 Ops/sec
CloneDeep
55552.9 Ops/sec
HTML Preparation code:
<script src="https://cdn.jsdelivr.net/npm/immer@3.1.3/dist/immer.umd.min.js"></script> <script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
state = [ {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}}, {data1: {data2: 'test'}} ];
Tests:
Produce
const result = immer.produce(state, draft => { draft[5].data1.data2 = 'updated' })
CloneDeep
const result = _.cloneDeep(state); result[5].data1.data2 = 'updated';