Ternary vs if/else (v3)

Revision 3 of this benchmark created on


Setup

var a = true,
    b;

Test runner

Ready to run.

Testing in
TestOps/sec
strict equal
if (a === true) {
  b = true;
} else {
  b = false;
}

if (a === false) {
  b = true;
} else {
  b = false;
}
ready
ternary strict equals
b = (a === true) ? true : false;

b = (a === false) ? true : false;
ready
normal equal
if (a == true) {
  b = true;
} else {
  b = false;
}

if (a == false) {
  b = true;
} else {
  b = false;
}
ready
ternary equal
b = (a == true) ? true : false;

b = (a == false) ? true : false;
ready
truthy/falsy
if (a) {
  b = true;
} else {
  b = false;
}

if (!a) {
  b = true;
} else {
  b = false;
}
ready
ternary truthy/falsy
b = (a) ? true : false;
b = (!a) ? true : false;
ready

Revisions

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