配列足し算いろいろ

普通に for

Array.prototype.sum_for = function() {
    var r = 0;
    for(var i = 0, l = this.length; i < l; i++) {
        r += this[i];
    }   
    return r;
}

while pop

Array.prototype.sum_while = function() {
    var r = 0;
    var f;
    while(f = this.pop()) {
        r += f;
    }
    return r;
}

join eval

Array.prototype.sum_eval = function() {
    return eval(this.join('+'));
}

pop 再帰

Array.prototype.sum_ref = function() {
    if(this.length == 1) return this[0];
    return this.pop() + arguments.callee.apply(this);
}


普通に for が一番速いです。