十、函数
目录
1、函数的概念
函数:封装了一段可被重复调用使用的代码块,通过此代码块可实现大量代码的重复使用。
2、函数的使用
函数使用分为两步:声明函数、调用函数。
2.1、声明函数
基本语法结构:
- function是声明函数的关键字,注意要小写。
- 函数名一般为动词。
- 函数不调用自己不执行。
2.2、调用函数
语法结构:函数名();
声明函数本身不会执行代码,只有调用函数时才会执行函数体代码。
2.3、函数的封装
函数的封装:把一个或多个功能通过函数的方式封装起来,对外只提供一个简单的函数接口。
案例
用函数求1~100累加和:
3、函数的参数
3.1、形参和实参
在执行过程中形参类似于一个不用声明的变量,用于接受实参。即执行过程中相当于:形参 = 实参。
形参默认值为undefined。
函数的参数可以有也可以没有,个数不限。
参数的作用:在函数内部某些值不能固定时,可以通过参数在调用函数时传递不同的值进去。
3.2、形参和实参的匹配问题
情况一:形参个数和实参个数一致,程序正常运行输出结果。
情况二:实参个数多于形参个数,最终还是取到形参个数。
情况三:实参个数少于形参个数,由于有一部分形参没有被赋值则该形参被定义为undefined,于是最后结果为NaN。
4、函数返回值return
由于函数只是实现某种功能,最终的结果还是要返回给函数的调用者,此过程需要return来实现。
格式:
案例
求两个数之间的最大值:
求数组中的最大值: 4.1:return注意事项
return可以终止函数(return后的代码不被执行)且只可以返回一个结果值(return返回的结果是最后一个值)。
如果想要同时返回多个值可以利用数组的形式。
如果函数没有return则返回的是undefined。
4.2、break、continue、break的区别
5、arguments的使用
在不确定函数有多少个参数传递的时候可以用arguments来获取,在JS中arguments实际上是当前函数的内置对象。
所有函数都内置了一个arguments对象,arguments对象中储存了传递的所有参数。
使用格式:
注意:
在使用arguments的过程中同样也可以使用数组的方式遍历arguments。
案例
求任意个数的最大值:
6、函数声明的另外一种方式
除了利用函数关键字外还可以利用函数表达式来声明函数。
注意:
- 其中的fun是变量名不是函数名
- 函数表达式声明函数的方式和声明变量的差不多,只是变量里面存的是值,而函数表达式里面存的是函数。
- 函数表达式也可以传递参数,例如: