Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
Chrome 96
Mac OS X 10.15.7
Desktop
3 years ago
Test name Executions per second
test false 914821184.0 Ops/sec
test undefined 8332570.5 Ops/sec
test hasOwnProperty 87819920.0 Ops/sec
test == null 904887360.0 Ops/sec
test == undefined 8271383.0 Ops/sec
test static hasOwnProperty 3519068.2 Ops/sec
test static hasOwn 7855440.0 Ops/sec
Tests:
  • test false

    AخA
     
    var n = {};
    while(true) {
        if(!n.foo) 
            break;
    }
  • test undefined

     
    var n = {};
    while(true) {
        if(n.foo===undefined) 
            break;
    }
  • test hasOwnProperty

     
    var n = {};
    while(true) {
        if(!n.hasOwnProperty('foo')) 
            break;
    }
  • test == null

     
    var n = {};
    while(true) {
        if(n.foo==null) 
            break;
    }
  • test == undefined

     
    var n = {};
    while(true) {
        if(n.foo==undefined) 
            break;
    }
  • test static hasOwnProperty

     
    var n = {};
    while(true) {
        if(!Object.prototype.hasOwnProperty(n,'foo')) 
            break;
    }
  • test static hasOwn

     
    var n = {};
    while(true) {
        if(!Object.hasOwn(n, 'foo')) 
            break;
    }