Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36
Chrome 95
Mac OS X 10.15.7
Desktop
3 years ago
Test name Executions per second
offsetWidth 253784.3 Ops/sec
getBoundingClientRect 286272.4 Ops/sec
canvas 416033.0 Ops/sec
HTML Preparation code:
AخA
 
1
<div>Hello World</div>
Script Preparation code:
 
const canvas = document.createElement('canvas')
window.context = canvas.getContext('2d')
Tests:
  • offsetWidth

     
    document.querySelector('div').offsetWidth
  • getBoundingClientRect

     
    document.querySelector('div').getBoundingClientRect().width
  • canvas

     
    window.context.measureText('Hello world')