Test name | Executions per second |
---|---|
style.setProperty | 129.8 Ops/sec |
style.cssText | 170.0 Ops/sec |
style | 141.2 Ops/sec |
Object.assign | 417.9 Ops/sec |
setAttribute | 357.7 Ops/sec |
<div id="test"><div style="height: calc(var(--w, 1) * 1px); background-color:red;"></div></div>
el = document.getElementById("test");
rn = ()=>Math.floor(10+Math.random(5));
let i = 0;
while (i < 10000) {
el.style.setProperty("--w", rn);
i++;
}
let i = 0;
while (i < 10000) {
el.style.cssText = `--w: ${rn()};`;
i++;
}
let i = 0;
while (i < 10000) {
el.style = `--w: ${rn()};`;
i++;
}
let i = 0;
while (i < 10000) {
Object.assign(el.style, {
['--w']: rn(),
});
i++;
}
let i = 0;
while (i < 10000) {
el.setAttribute('style',`--w: ${rn()};`);
i++;
}