Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
dataset vs getAttribute() vs jQuery.data() vs jQuery.attr()
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
Browser:
Chrome 127
Operating system:
Windows
Device Platform:
Desktop
Date tested:
2 years ago
Benchmark engine:
Benchmark.js
dataset
1.2M/s
getAttribute
1.1M/s
jQuery .data()
38K/s
jQuery .attr()
31K/s
View exact numbers
Test name
Executions per second
✓
dataset
1,207,225 Ops/sec
getAttribute
1,055,182 Ops/sec
jQuery .data()
38,457 Ops/sec
jQuery .attr()
31,455 Ops/sec
HTML Preparation code:
<h3 id="data" data-test="text">Some test content</h3> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script>
Tests:
dataset
window.onload = function() { var test = document.querySelector("h3#data").dataset.test; document.querySelector("h3#data").dataset.test = test+"1"; }
getAttribute
window.onload = function() { var test = document.querySelector("h3#data").getAttribute("test"); document.querySelector("h3#data").setAttribute("test", test+"1"); }
jQuery .data()
$(document).ready(function() { var $h3 = $("h3#data"); var test = $h3.data("test"); $h3.data("test", test+"1"); });
jQuery .attr()
$(document).ready(function() { var $h3 = $("h3#data"); var test = $h3.attr("data-test"); $h3.attr("data-test", test+"1"); });