我在下面定义了java脚本函数。
function getSum(a, b)
{
return a + b;
}
function getSum(a, b, c)
{
return a + b + c ;
}
function getSum(a, b, c, d)
{
return a + b + c + d;
}
getSum(1,2);
getSum(1,2, 3);
getSum(1,2,3, 4);
getSum(undefined, 1,2);
getSum(undefined, undefined, 1,2);
每次我调用getSum()时只会使用最新版本ie。一个有4个参数被调用?怎么回事?这与java重载有点不同吗?
请解释javascript如何处理方法的重载。
答案 0 :(得分:1)
每次我调用getSum()时只会使用最新版本ie。一个4 参数被调用?怎么回事?这有点 与java重载不同?
因为getSum
的初始定义被后来的定义所覆盖,所以无论何时调用该方法,都会使用最后的定义。
这与重载无关,只是定义了那些函数定义的顺序。
如果
function getSum(a, b)
{
return a + b;
}
最后定义了,它会为你的所有函数调用提取它。