Javascript中函数重载的实现
js本身并没有像c#或者java中一样提供的函数重载功能。
但是可以通过js中特殊字段和功能来实现
最最要的就是arguments字段。
在js的方法体内可以使用arguments内置的字段,他是应该是一个数组,提供了以数组的方式来访问它,比如length和array[i]来访问各个参数
function test(id,name)
{
for( var i=0;i< arguments.length;i++)
{
alert(arguments[i]);
}
}
这样就可以显示test方法的输入参数是多少,以及各个输入参数是什么
这样就可以根据输入参数的长度来执行不同的方法
还有一个重要的方法就是typeof 和 constructor,这两个方法提供了对输入参数的类型检测
这样我们根据arguments 和 typeof 或者constructor就可以来判断输入参数的个数和类型来执行不同的方法
补充,js方法都是弱类型,function声明的方法即使没有输入参数也可以输入多个参数
这个方法根据输入参数生成数组
function markArray()
{
var arr = new Array();
for( var i=0;i< arguments.length;i++)
{
arr.push(arguments[i
}
return arr;
}
本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。