Prototype vs Module pattern performance (v6)

Revision 6 of this benchmark created on


Test runner

Ready to run.

Testing in
TestOps/sec
Prototypal
Klass = function() {
}
Klass.prototype.foo = function() {
    log('foo');
}
Klass.prototype.bar = function() {
    log('bar');
}

var i = 1000, objs = [];
while(i--) {
    var o = new Klass()
    objs.push(new Klass());
    o.bar;
    o.foo;
}
ready
Module pattern
Klass = function() {
    var foo = function() {
        log('foo');
    }, bar = function() {
        log('bar');
    };

    return {foo: foo, bar: bar}
}

var i = 1000, objs = [];
while(i--) {
    var o = new Klass()
    objs.push(new Klass());
    o.bar;
    o.foo;
}
ready

Revisions

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