closure lookup

JavaScript performance comparison

Test case created

Preparation code

 
<script>
Benchmark.prototype.setup = function() {
    var a = new function() {
        var local = ['a', 'b'];
        return function(x) {
                return local[x];
        }
    }
   
    var b = function(x) {
        var local = ['a', 'b'];
        return local[x];
    }
   
    var c = function(x) {
        if (x == 0)
                return 'a';
        else if (x == 1)
                return 'b';
    }
};
</script>

Test runner

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

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
anonymous closure
a(parseInt(Math.random()*2))
pending…
redefined array
b(parseInt(Math.random()*2))
pending…
if statement
c(parseInt(Math.random()*2))
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. Here’s a list of current revisions for this page:

0 comments

Add a comment