Equality operators with the same types
JavaScript performance comparison
Info
Test for == and === with the same operand types.
Preparation code
<script>
var foo = 12,
bar = 12,
baz = "12";
</script>
Test runner
Warning! For accurate results, please disable Firebug before running the tests. (Why?)
Java applet disabled.
| Test | Ops/sec | |
|---|---|---|
Non-strict equal |
|
pending… |
Strict equal |
|
pending… |
different types, coercion |
|
pending… |
different types, no coercion |
|
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. Here’s a list of current revisions for this page:
- Revision 1: published by Dmitry A. Soshnikov
- Revision 4: published by Kyle Simpson
- Revision 6: published
- Revision 9: published
- Revision 10: published by Tobias Reiss
- Revision 11: published by Matthew Robb
- Revision 12: published
- Revision 13: published by Terry Anastasiadis
1 comment
By spec (here and here) both
==and===should perform the same number of steps when comparing like type values.The point of this test is to show that even though there are micro differences there is no real world performance concern for using
===over==as the lowest ops/sec are still in the millions of operations a second. You should use the correct operator for the job.