我们一直在使用JS编写面向对象的方法,其中一个问题是定义一个方法,如下所示:
复制代码代码如下所示:
功能listcommon2(第一,第二,第三)
{
第一个=函数()
{
警报(第一行+第一);
}
}
listcommon2干=功能(第一)。
{
();
警报(第一行+第一);
}
listcommon2。原型。DO2 =功能(一)
{
();
警报(第一行+第一);
}

这两种方法有什么区别没有原型它需要使用什么

测试代码:
复制代码代码如下所示:
VaR T1 =新listcommon2(燃烧的水1
(); / / / / t1.do1调用错误
listcommon2.do1(燃烧水1);
VaR T2 =新listcommon2(燃烧的水2
t2.do2(2水); / /
/ / listcommon2.do2(1水); / /调用错误

经过测试,发现没有办法使用原型相当于类的静态方法,可以这样说,listcommon2.do1(煮水1),如果这样的电话,就会出错,t1.do1()。

相反,原型法是等价类的一个实例,并且不允许使用后,listcommon2.do2(烧1);这就犯了一个错误。

结论原型定义的方法等价于类的实例方法。它必须在新的环境下使用。函数的约束可以在函数中调用,实例方法的约束是相似的。

使用没有原型定义的方法相当于类的静态方法。它可以直接使用,没有新的。函数的局限性可以在函数中调用,类的静态方法有一定的局限性。

例如,不能调用这个第一());