函数的概述
- 什么是函数?
将一个(反复)使用的功能,封装成一个独立的模块,这个模块叫做函数。
- 好处
使程序可控 一次封装,无限次使用(增加代码的复用度)
- 函数的类型
Function
- 函数的分类
内置函数(库函数、系统函数) 自定义函数
函数的声明
- 语句定义法(声明式函数): 可以任意位置调用!
function是JS中内置的数据类型
function 声明函数的关键字, 全部小写
函数是做某件事请,函数名一般是动词
函数不调用,自己不执行
function 函数名([参数]){
//功能
}
- 表达式定义法(赋值式函数):只能先声明,后使用!
var 变量名 = function([参数]){
//功能
}
函数的调用
- 一般调用 :函数名([参数])
<!-- 调用函数的时候千万不要忘记小括号 -->
函数的参数
<!-- 可以带参数,可以不带参数 -->
- 形式参数(形参) :声明函数时小括号里面使用的参数,(形式上的参数)
- 实际参数(实参) :调用函数时小括号里面使用的参数,(实际的参数)
形参和实参的执行过程
<!-- 调用函数时,把实参传递给形参 形参是接收实参的,形参类似于一个变量 -->
函数的注意点
1.多个参数之间逗号隔开 2.形参可以看做是不用声明的变量
形参实参的匹配问题
- 如果形参和实参的数量一致,则正常输出结果
- 如果实参的数量少于形参的数量时,多余的形参值为undefined 最终的结果为 NaN
- 如果实参的数量多于形参的数量时,会取到形参的个数,多余的实参忽略。 <!-- 建议尽量形参和实参的数量相匹配 -->
函数的返回值
<!-- 我们的函数只是实现某种功能,最终的结果需要返回给函数的调用者 函数名( ) 通过return实现的 只要函数遇到return, 就把后面的结果 返回给函数的调用者 函数名() = return后面的结果 在我们实际开发里面,我们经常使用一个变量来接收返回结果 -->
- return
- 将函数中处理后的结果返回到调用该函数的地方。
- 退出函数
- return 后面的代码不会被执行
- return 只能返回一个值 , 返回的结果是最后一个值
- return 想要输出多个值,可以使用数组来输出.
- 我们的函数如果有 return 则返回return后面的值,如果没有return 则返回undefined
// 比如 1 + 2 是一个表达式,那么 这个表达式的结果就是 3
console.log(1 + 2) // 3
function fn() {
// 执行代码
}
// fn() 也是一个表达式,这个表达式就没有结果出现
console.log(fn()) // undefined
// 比如 1 + 2 是一个表达式,那么 这个表达式的结果就是 3
console.log(1 + 2) // 3
function fn() {
// 执行代码
}
// fn() 也是一个表达式,这个表达式就没有结果出现
console.log(fn()) // undefined