Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Spread operator vs Immutable.js performance for common use cases
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/130.0.0.0 Safari/537.36
Browser:
Chrome 130
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Object set - spread
30809916.0 Ops/sec
Object set - immutable
25032466.0 Ops/sec
Array push - spread
26332192.0 Ops/sec
Array push - immutable
14844032.0 Ops/sec
HTML Preparation code:
<script src="https://cdnjs.cloudflare.com/ajax/libs/immutable/3.8.2/immutable.js" crossorigin="anonymous"></script>
Script Preparation code:
var obj = { b:"hello", c: true, d:7 }; var arr = ['a', 'b', 'c']; var map = Immutable.Map(obj); var list = Immutable.List(arr);
Tests:
Object set - spread
var newVal = { ...obj, b: 'world' };
Object set - immutable
var newVal = map.set('b', 'world');
Array push - spread
var newVal = [ ...arr, 'd' ];
Array push - immutable
var newVal = list.push('d');