Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36
Chrome 99
Mac OS X 10.15.7
Desktop
2 years ago
Test name Executions per second
offsetWidth 495360.4 Ops/sec
getBoundingClientRect 582285.1 Ops/sec
canvas 731080.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')