JS中的函数类似于c#函数,但是功能要比c#函数强大的多。
JS中“函数”也是“对象”:
length属性:获取方法命名参数的个数
tosting();获取方法的源代码
普通函数的定义:
【方法】:function add(x,y){
return x+y;
}
【定义函数的注意点】:
1、使用function关键字;
2、无返回值类型;
3、无参数的类型;
4、JS中函数永远有返回值,如果没有执行return语句,则返回undefined。(将函数当做“构造函数”时,return语句将不返回)
5、易错:自定义函数名不要与内置、dom内置等系统函数名重名。
关于JS中参数的问题:
如果不确定函数中将来要传递的参数个数,那么可以使用类似于c#中可变参数的解决办法。(在JS中叫做arguments对象)
【注意】:其实所有的方法都无需定义形参,定义形参的目的仅仅是为了使用方便;无论是否定义了“形参”,在实际调用该函数的时候,所有的参数都包含在了arguments对象中。
JS函数不能重载:(没有方法重载的概念 )
两个重名的方法,最后一个覆盖前面的。
【原因】:因为函数有“预解析”功能,所以在执行之前会将所有的函数先进行“预解析”。预解析的时候就会使用最后定义的函数覆盖前面定义的函数。