函数

2018-12-06  本文已影响0人  IvyAutumn

理解参数

ECMAScript函数不介意传递进来的参数以及类型。其原因在于ECMAScript中的参数在内部都是用一个数组来表示的,在函数体内可以通过arguments对象来访问这个参数数组。

但是arguments对象只是与数组类似(它并不是Array的实例),能够像数组一样通过arguments[index]的方式访问每一个元素,通过arguments.length的方式获得参数的个数。

ECMAScript函数无需指定函数的返回值,因为它可以在任何时候返回任何值。

没有重载

ECMAScript函数没有重载,若定义了两个名字相同的函数,则改名字只属于后定义的函数。
可以通过检查传入函数中参数的类型和数量并作出不同的反应,可以模仿方法的重载。

function doAdd(num1, num2){
    if(arguments.length == 1)
        alert(num1+10)
    else
        alert(arguments[0]+num2);
}

注:arguments对象可以与命名参数一起使用。

上一篇 下一篇

猜你喜欢

热点阅读