1.函数的定义
为完成某一功能的程序指令(语句)的集合,称为函数。函数使用function关键字来定义。它可以用在函数定义表达式或者函数声明语句里。在这两种形式中,函数定义都从function关键字开始,其后跟随这些部分
1) 函数名称标识符:函数明川是函数声明语句必须的部分。它的用途就像是变量的名字,新定义的函数对象会赋值给这个变量。对函数定义表达式来说,这个名字是可选的:如果存在,该名字只存在函数中,并代指函数对象本身。
2) 一对圆括号:其中包含由0个或者多个逗号隔开的标识符组成的列表。这些标识符是函数的参数明川,它们就像函数体中的局部变量一样。
3) 一对花括号,里边包含0条或者多条javascript语句。这些语句构成了函数体:一旦调用函数,就会执行这些语句。
2.函数的分类
1) 自定义函数(我们自己编写的函数),如:functionfunName(){}。
2) 系统函数(JavaScript自带的函数),如alert函数。
3.函数的调用方式
1) 普通调用:functionName(实际参数...)。
2) 通过指向函数的变量去调用:
4.函数的返回值
1) 当函数无明确返回值时,返回的值就是"undefined"。
2) 当函数有返回值时,返回值是什么就返回什么。
5.函数的深入使用
1) 可变参数
函数的参数列表可以是任意多个,并且数据类型可以是任意的类型,JavaScript的函数天然支持可变参数,JavaScript有一个arguments变量可以访问所有传到函数内部的参数。
2) javascript创建动态函数
JavaScript支持创建动态函数,动态函数必须用Function对象来定义(Function是javascript中的一个对象,是固定不变的,规定Function对象的"F"必须大写,当是function的时候,我们知道是定义函数的时候所使用的一个关键字:function funName(x,y),当是Function的时候(F大写的时候),我们知道是javascript中的对象)。
创建动态函数的基本格式:var 变量名 = new Function("参数1","参数2","参数n","执行语句");
使用new关键字(new是javascript中一个关键字,也是固定的,我们在定义动态函数的时候必须要使用new来创建这个Function对象)
我们先定义一个变量: var 变量名,在这里,变量名是随便的,然后我们再使用new关键字创建一个Function对象,然后再把这个对象赋值给这个任意的变量,也就是:var 变量名 = new Function("参数1","参数2","参数n","执行语句");Function后面的括号里先是传递给函数的参数,然后用一个逗号(,)隔开然后是这个函数要执行的功能的代码
3) 匿名函数
直接声明一个匿名函数,立即使用。用匿名函数的好处就是省得定义一个用一次就不用的函数,而且免了命名冲突的问题,js中没有命名空间的概念,因此很容易函数名字冲突,一旦命名冲突以最后声明的为准。
4) JavaScript不支持函数的重载
JavaScript没有方法重载的说法,如果两个方法名字一样,即使参数个数不一样,那么后面定义的就会覆盖前面定义,调用方法时永远是调用后定义的那个。