Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Object.assign vs direct assignment multiple properties 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/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36
Browser:
Chrome 125
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Direct Assignment
62.3 Ops/sec
Object.assign
20.2 Ops/sec
Script Preparation code:
var data = {};
Tests:
Direct Assignment
for(var i = 0; i < 10000; i++) { data[`prop_${i}`] = true; data[`prop_${i}1`] = true; data[`prop_${i}2`] = true; data[`prop_${i}3`] = true; data[`prop_${i}4`] = true; data[`prop_${i}5`] = true; data[`prop_${i}6`] = true; data[`prop_${i}7`] = true; data[`prop_${i}8`] = true; data[`prop_${i}9`] = true; data[`prop_${i}10`] = true; data[`prop_${i}11`] = true; data[`prop_${i}12`] = true; }
Object.assign
for(var i = 0; i < 10000; i++) { Object.assign(data, { [`prop_${i}`]: true, [`prop_${i}1`]: true, [`prop_${i}2`]: true, [`prop_${i}3`]: true, [`prop_${i}4`]: true, [`prop_${i}5`]: true, [`prop_${i}6`]: true, [`prop_${i}7`]: true, [`prop_${i}8`]: true, [`prop_${i}9`]: true, [`prop_${i}10`]: true, [`prop_${i}11`]: true, [`prop_${i}12`]: true }); }