Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
tagName.toLowerCase() vs instanceof
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
Browser:
Chrome 136
Operating system:
Linux
Device Platform:
Desktop
Date tested:
one year ago
__proto__
16.3M/s
instanceof
13.8M/s
localName
12.2M/s
nodeName.toLowerCase()
11.5M/s
tagName.toLowerCase()
11.4M/s
View exact numbers
Test name
Executions per second
✓
__proto__
16,341,625 Ops/sec
instanceof
13,798,491 Ops/sec
localName
12,162,344 Ops/sec
nodeName.toLowerCase()
11,491,501 Ops/sec
tagName.toLowerCase()
11,444,052 Ops/sec
Script Preparation code:
var xs = []; var n = 0; for (let i = 0; i < 1000; ++i) { xs[i] = (Math.random() > .5) ? document.createElement(`div`) : document.createElement(`span`); };
Tests:
instanceof
n += ((xs[(Math.random() * 1000)|0]) instanceof HTMLDivElement)|0;
tagName.toLowerCase()
n += (xs[(Math.random() * 1000)|0].tagName.toLowerCase() === `div`)|0;
nodeName.toLowerCase()
n += (xs[(Math.random() * 1000)|0].nodeName.toLowerCase() === `div`)|0;
localName
n += (xs[(Math.random() * 1000)|0].localName === `div`)|0;
__proto__
n += ((xs[(Math.random() * 1000)|0]).__proto__ === HTMLDivElement.prototype)|0;