Function Declaration vs. Function Expression

JavaScript performance comparison

Revision 5 of this test case created by

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  var element = document.createElement('div');

};

Benchmark.prototype.teardown = function() {
  element = null;

};
</script>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
Function Declaration
function fn() { return 1; };

var result = fn();
pending…
Function Expression
var fn = function() { return 1; };

var result = fn();
pending…
Function Constructor
var fn = new Function('return 1;');

var result = fn();
pending…
DOM Function Transfer
element.setAttribute('onclick', 'return 1;');

var result = element.onclick();
pending…
Named Function Expression
var fn = function fn() { return 1; };

var result = fn();
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL.

0 Comments