Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
object spread vs immutable-js set vs immer 2
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0.1 Safari/605.1.15
Browser:
Safari 26
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
10 months ago
Benchmark engine:
Benchmark.js
immutable-js
4K/s
object spread
65/s
immer
7/s
View exact numbers
Test name
Executions per second
✓
immutable-js
3,531 Ops/sec
object spread
65 Ops/sec
immer
7 Ops/sec
HTML Preparation code:
<script src="https://cdnjs.cloudflare.com/ajax/libs/immutable/3.8.2/immutable.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/immutability-helper@2.7.0/index.min.js"></script> <script src="https://unpkg.com/immer@6.0.3/dist/immer.umd.production.min.js"></script>
Tests:
object spread
let obj = {}; for(i=0;i<1000;i++){ const key = 'key'+i const value = 'value'+i obj = {...obj, [key]: {key, value}} }
immutable-js
let obj = Immutable.Map(); for(i=0;i<1000;i++){ const key = 'key'+i const value = 'value'+i obj = obj.set(key, {key, value}) }
immer
let obj = {}; for(i=0;i<1000;i++){ obj = immer.produce(obj, draft => { const key = 'key'+i const value = 'value'+i draft[key] = {key, value} }) }