函数的参数分为实参和形参
实参:具有具体的数据,调用函数时函数名后面的”()“中的数据
形参:声明变量是”()“中的参数,是可变的,得到的值是由实参传递过来的
实参和形参可能会出现多种情况多了、少了
(1)例:当实参的数量多于形参的数量,则按顺序取,剩下的不用管
<script>
function f(a,b,c){
console.log(`a,b,c取得的值为为${a},${b},${c}`)
console.log(`三者相加结果为${a+b+c}`)
}
f(1,3,4,5,7)
</script>
(2)当实参的数量少于形参的数量时,按顺序取值,未取得的形参默认未undefined,那么任何数据类型与undefined运算结果都未NaN
function f(a,b,c){
console.log(`a,b,c取得的值为为${a},${b},${c}`)
console.log(`三者相加结果为${a+b+c}`)
}
f(1,3)
可以将形参设置默认值,当实参传递的参数不够时,形参默认值。方法有两种
(1)在形参中设初始值,未取得的值默认为0(可以自己改变)
<script>
function f(a=0,b=0,c=0){
console.log(`a,b,c取得的值为为${a},${b},${c}`)//a:1,b:0,c:0实参只传递一个实参给形参,剩下的形参为默认值0
console.log(`三者相加结果为${a+b+c}`)
}
f(1)
</script>
(2)使用”||“
<script>
function f(a,b,c){
a=a||0//使用逻辑或:当a形参有给定的值时就是传递过来的实参值,若没有,则默认取值为0
b=b||0
c=c||0
console.log(`a,b,c取得的值为为${a},${b},${c}`)
console.log(`三者相加结果为${a+b+c}`)
}
f(3)
</script>
2.若在使用别人写好的参数,自己使用时不知道有参数参数的话可以用” console.log(arguments)“数组 里面装的是实参
<script>
function f(a,b,c){
console.log(arguments)//是实参
console.log(arguments.length)//实参的个数:4
}
f(12,23,54,5)
</script>