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;
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    test false
    test undefined
    test hasOwnProperty
    test == null
    test == undefined
    test static hasOwnProperty
    test static hasOwn

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
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 on Mac OS X 10.15.7
View result in a separate tab
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