相关疑难解决方法(0)

扩展String.prototype性能表明函数调用快了10倍

我想用一些实用方法扩展String对象原型.它起作用了,但性能却低得惊人.将字符串传递给函数比覆盖String.prototype执行相同操作的方法快10倍.为了确保这真的发生,我创建了一个非常简单的count()函数和相应的方法.

(我正在尝试,并创建了该方法的三个不同版本.)

function count(str, char) {
    var n = 0;
    for (var i = 0; i < str.length; i++) if (str[i] == char) n++;
    return n;
}

String.prototype.count = function (char) {
    var n = 0;
    for (var i = 0; i < this.length; i++) if (this[i] == char) n++;
    return n;
}

String.prototype.count_reuse = function (char) {
    return count(this, char)
}

String.prototype.count_var = function (char) {
    var str = this;
    var n = 0;
    for …
Run Code Online (Sandbox Code Playgroud)

javascript performance

6
推荐指数
1
解决办法
751
查看次数

标签 统计

javascript ×1

performance ×1