当原型函数在javascript中调用常规函数时会发生什么?

时间:2011-11-03 16:36:55

标签: javascript

说我有

myObject.prototype.myFunction = function()
{
    myOtherFunction();
}

function myOtherFunction()
{
    // ...
}

这样做有什么不好,有什么后果等?

4 个答案:

答案 0 :(得分:5)

  

当原型函数在javascript中调用常规函数时会发生什么?

该函数被调用:)

这样做没有错。这个其他功能不是对象的一部分。这与从原型函数调用任何其他方法没什么不同。例如,我认为您不会对此代码三思而后行:

myObject.prototype.myFunction = function()
{
    alert(Math.pow(2,5));
}

答案 1 :(得分:1)

不,这不错,这是标准。

答案 2 :(得分:1)

我认为这没有任何问题。可能存在在全局范围中定义方法的情况,您需要在类中使用该方法。也许我错过了什么,但我不明白为什么这会是一个问题。

答案 3 :(得分:1)

原型函数与“常规”函数没有区别。

唯一的区别是该函数是由prototyped对象的实例继承的。尽管如此,这并不能使原型功能比其他功能更特殊。