Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36
Chrome 87
Windows
Desktop
4 years ago
Test name Executions per second
== 3665.9 Ops/sec
=== 3667.3 Ops/sec
== str 129.4 Ops/sec
=== str 3668.0 Ops/sec
== true 1740.3 Ops/sec
== null 3674.8 Ops/sec
=== null 3683.5 Ops/sec
=== true 3656.0 Ops/sec
== str with str 3682.4 Ops/sec
=== str with str 3673.0 Ops/sec
== str with number 34.2 Ops/sec
=== str with number 3691.7 Ops/sec
Tests:
  • ==

    AخA
     
    for (let a = 0; a < 1_000_000; a++) {
        a == 1;
    }
  • ===

     
    for (let a = 0; a < 1_000_000; a++) {
        a === 1;
    }
  • == str

     
    for (let a = 0; a < 1_000_000; a++) {
        a == '1';
    }
  • === str

     
    for (let a = 0; a < 1_000_000; a++) {
        a === '1';
    }
  • == true

     
    for (let a = 0; a < 1_000_000; a++) {
        a == true;
    }
  • == null

     
    for (let a = 0; a < 1_000_000; a++) {
        a == null;
    }
  • === null

     
    for (let a = 0; a < 1_000_000; a++) {
        a === null;
    }
  • === true

     
    for (let a = 0; a < 1_000_000; a++) {
        a === true;
    }
  • == str with str

     
    for (let a = 0, b = ''; a < 1_000_000; a++) {
        b == '0';
    }
  • === str with str

     
    for (let a = 0, b = ''; a < 1_000_000; a++) {
        b === '0';
    }
  • == str with number

     
    for (let a = 0, b = ''; a < 1_000_000; a++) {
        b == 0;
    }
  • === str with number

     
    for (let a = 0, b = ''; a < 1_000_000; a++) {
        b === 0;
    }
  • obj to bool

     
    for (let a = 0, b = {}; a < 1_000_000; a++) {
        b == true;
    }
  • bool to bool

     
    for (let a = 0, b = false; a < 1_000_000; a++) {
        b == true;
    }
  • arr to bool

     
    for (let a = 0, b = []; a < 1_000_000; a++) {
        b == true;
    }
  • str to bool

     
    for (let a = 0, b = ''; a < 1_000_000; a++) {
        b == true;
    }
  • null to bool

     
    for (let a = 0, b = null; a < 1_000_000; a++) {
        b == true;
    }
  • null == undefined

     
    for (let a = 0, b = null; a < 1_000_000; a++) {
        b == undefined;
    }
  • undefined == null

     
    for (let a = 0, b = undefined; a < 1_000_000; a++) {
        b == null;
    }