JavaScript重载函数实例剖析
1.javascript中是没有重载函数这个概念的!
首先javascript是没有重载函数这个概念的,很久以前,我用javascript做网页的时候,写一些简单的效果,根本不需要用到重载函数,当写游戏的时候,有大量的函数的时候,就想用重载函数了,没想到javascript不支持。
我们来简单用两种方式来"模拟"下重载函数。
2.根据参数的个数来判断
javascript的函数中有一个叫arguments的变量,是记录参数的一个数组,我们可以用这个来判断参数的个数,然后分别执行不同的内容,就是同一个函数可以有不同效果,跟C++等强类型语言的重载函数还是相差很大。你可以这样写,参数全部注释掉,告诉使用函数者,这个函数最多支持3个参数,具体参数在函数里面再获取。支持重载函数的注释一定要多写点,这样会清晰些,最好附上调用例子。
/** *ReturnsumofaandbandlessthanlimitNumber *@param{Number}a *@param{Number}b *@param{Number}limitNumber */ functionadd(/*a,b,limitNumber*/){ vara,b,limitNumber; a=arguments[0]; b=arguments[1]; if(arguments.length==3){ limitNumber=arguments[2]; if(a+b>limitNumber){ returnlimitNumber; } } returna+b; }
3.根据参数类型不同来判断
javascript有一个关键字叫typeof,可以判断出一个变量的类型。
vartemp="say";//string vartemp=1;//number vartemp=undefined;//undefined vartemp=null;//object vartemp={};//object vartemp=[];//object vartemp=true;//boolean vartemp=function(){}//function functiontestFunction(a){ if(typeof(a)=="number"){ //dosomething }elseif(typeof(a)=="string"){ //dosomething } }
以上内容是小编给大家介绍的javascript重载函数的相关知识,感兴趣的朋友一起学习吧!