扩展功能原型的可能性

时间:2018-10-07 18:03:09

标签: javascript

是否可以扩展“ myfunction”的功能原型-无需操作Function.prototype-可以扩展对象原型(myfunction.prototype.method = function(){})一样?

亲切的问候

2 个答案:

答案 0 :(得分:1)

是的,我们可以扩展函数原型。每个javascript函数都继承自内置的Javascript Function对象,因此是Function对象的类型。 W3schools示例:

function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
Person.prototype.name = function() {
    return this.firstName + " " + this.lastName;
};

W3schools link MDN Link Function

注意:切勿修改任何javascript对象的默认原型。

答案 1 :(得分:0)

关于本机功能,JavaScript已深入prototype的核心。尽管不清楚,但您可以在Native Prototypes上使用扩展名,其中包括Function对象。

尽管如此,我还是建议谨慎,因为这可能会导致意想不到的行为和副作用-就像can be a bad idea这样的“默认”本机功能的每次更改一样。