JavaScript:动态扩展原型是一种不好的做法吗?

时间:2016-05-11 09:09:02

标签: javascript prototype extends

我想知道动态扩展Function的原型是不好的做法。我正在考虑使用一个静态方法来接收属性名称和要添加到原型的函数。

这是一种不好的做法吗?

function Test() {
    this.condition = false;
}

Test.extend = function(id, task) {
    this.prototype[id] = function() {
        return task.apply(this, arguments);
    };
};

1 个答案:

答案 0 :(得分:0)

我想说在这种情况下这是不好的做法,因为你无法控制所添加的[id]方法是否从类中被覆盖。

String.Format

根据代码的方式,您无法知道第一种方法何时被覆盖,从而随机破坏您的代码。