Run details:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36
Chrome 53
Windows 7
Other
8 years ago
Test name Executions per second
emptyFunc 9774589.0 Ops/sec
trueFunc 9822739.0 Ops/sec
undefinedFunc 3553377.8 Ops/sec
nullFunc 9695478.0 Ops/sec
notDefinedFunc 5249804.0 Ops/sec
definedFunc 5274334.5 Ops/sec
staticFunc 9485390.0 Ops/sec
localUndefinedFunc 9471848.0 Ops/sec
wrapped localUndefinedFunc function 9802709.0 Ops/sec
Script Preparation code:
x
 
var notDefined;
var defined = 1;
var emptyFunc = function() {};
var trueFunc = function() { return true; }
var undefinedFunc = function() { return undefined; }
var nullFunc = function() { return null; }
var notDefinedFunc = function() { return notDefined; }
var definedFunc = function() { return defined; }
var staticFunc = function() { return 1; }
var localUndefinedFunc = (function() {
  var notDefinedAgain;
  
  return function() {
    return notDefinedAgain;
  }
})();
Tests:
  • emptyFunc

     
    emptyFunc();
  • trueFunc

     
    trueFunc();
  • undefinedFunc

     
    undefinedFunc();
  • nullFunc

     
    nullFunc();
  • notDefinedFunc

     
    notDefinedFunc();
  • definedFunc

     
    definedFunc();
  • staticFunc

     
    staticFunc();
  • localUndefinedFunc

     
    localUndefinedFunc();
  • wrapped localUndefinedFunc function

     
    (localUndefinedFunc())