getBoundingRect vs offsetWidth vs getBBox vs getComputedTextLength in SVG

JavaScript performance comparison

Revision 11 of this test case created by

Preparation code

<svg><text id="foo">FoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobar</text>
</svg>
      
<script>
Benchmark.prototype.setup = function() {
  var foo = document.getElementById('foo');

};
</script>

Preparation code output

<svg><text id="foo">FoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobar</text> </svg>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
getBoundingClientRect
foo.getBoundingClientRect().width;
pending…
offsetWidth
foo.offsetWidth;
pending…
getBBox
foo.getBBox().width
pending…
getComputedTextLength
foo.getComputedTextLength()
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL.

0 Comments

FoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobarFoobarfoobar