Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36
Chrome 106
Mac OS X 10.15.7
Desktop
2 years ago
Test name Executions per second
Object.prototype.hasOwnProperty 7171232.5 Ops/sec
obj.hasOwnProperty 14153942.0 Ops/sec
null check 7326758.0 Ops/sec
null check function 7357636.5 Ops/sec
Script Preparation code:
AخA
 
window.obj = { a: 2 }
Tests:
  • Object.prototype.hasOwnProperty

     
    Object.prototype.hasOwnProperty.call(obj, 'a');
  • obj.hasOwnProperty

     
    obj.hasOwnProperty('a');
  • null check

     
    obj.hasOwnProperty && obj.hasOwnProperty('a');
  • null check function

     
    typeof obj.hasOwnProperty === 'function' && obj.hasOwnProperty('a');