DOM element attribute retrievement speed

JavaScript performance comparison

Revision 2 of this test case created by Daniel Kocsan

Preparation code

<div id="myElement" data-foo="bar"></div
Benchmark.prototype.setup = function() {
    var obj = {
      foo: 'bar'
    element = document.getElementById('myElement');

Benchmark.prototype.teardown = function() {
    obj = null;

Preparation code output

Test runner

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

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
DOM attribute
(function () {
  var element = document.getElementById('myElement'),
      a = element.getAttribute('data-foo');
Object property
(function () {
  var a =;
Cached DOM attribute
(function () {
  var a = element.getAttribute('data-foo');

Compare results of other browsers


You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:


Comment form temporarily disabled.

Add a comment