您的位置:首页 > Web前端 > JavaScript

JavaScript不支持函数重载

2014-02-27 20:05 239 查看
在学习JavaScript的过程中发现一个很有趣的问题:初学者刚开始学习的时候觉得Javascript和Java很相近,除了Javascript是弱类型语言外;但是有趣的是Javascript并不支持函数的重载,如果像Java那样写出函数重载Javascript并不会报错,这就是有趣的地方了---不支持但又不算错误。那么对于同名的函数,当调用时只是简单的调用最后一个函数,就像是最后的一个函数把前面的同名函数全部覆盖掉了。可以看一个例子:
function test(a, b, c){
return a+b+c;
}

function test(a, b){
return a+b;
}

function test(){
return "Hello world";
}

window.alert(test(1,2,3));
window.alert(test(1,2));
window.alert(test());
三个对函数的调用都是调用了最后一个test()函数,弹出“Hello world”。。。其实我觉得本来Javascript的函数都是支持可变参数个数,而且又是弱类型语言,从这两点来看是不会支持函数重载的。
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: