一、理解函数的实参和形参
- 形参:函数定义时写明的参数叫形参
- 实参:函数调用时传入的参数叫实参
function f(a, b) { // a b为形参
return a + b
}
f(1, 2) // 1 2为实参
二、函数形参的定义方式
方式一:预先定义好所有需要的形参
- 特点:需要预知参数的个数
function f(a, b, c, d) {
return a + b + c + d
}
f(1, 2, 3, 4)
方式二:只定义部分可预知的参数,剩余的用剩余参数定义
- 特点:剩余参数是一个数组类型,是将剩余的参数转换为一个数组
function f(a, ...rest) {
let res = a
rest.forEach(e => res += e)
return res
}
f(1, 2, 3, 4) // 10
方式三:将所有的参数组合成一个数组
特点:不用预知参数的个数,需要遍历数组进行处理
function f(...arguments) {
let res = 0
arguments.forEach(e => {
res += e
})
return res
}
f(1, 2, 3, 4) //10
方式四:定义默认参数
- 特点:预先定义的参数均可定义默认参数
function f(a = 1, b = 2, c = 3, d = 4) {
return a + b + c + d
}
f() // 10