函数的参数(形参与实参)

118 阅读1分钟
  • 可以利用函数的参数实现函数重复不同代码,比如函数内部某些值不能确定,就可以通过参数在调用函数时传递不同的值进去(形参可以被看作是不用声明的变量,系统隐式声明了)
function fn(a,b,c){//这里的a,b,c就是形参,形参可以传很多个,用逗号隔开
  console.log(a,b,c)//形参在函数体中就相当于变量,存的值就是实参,实参变化,存的值也跟着变化
}
fn(1,4,7)//这里的1,4,7就是实参也可以有很多个
fn(3,6,9)

image.png

  • 函数形参与实参匹配问题
  1. 如果两者个数相同,就依次对应,正常输出结果
  2. 如果实参个数多于形参个数,则会取到形参个数就停止
  3. 如果实参个数小于形参个数,多于的形参定义为undefined
function fn(a,b,c){
  console.log(a,b,c)
}
fn(1,4,7)//形参与实参个数相同
fn(3,6,9,8)//实参个数多于形参
fn(2,3)//实参个数小于实参

image.png

  • arguments的使用:存储所有传递过来的实参(伪数组形式)只有函数才有arguments对象
function fn(a,b,c){
  console.log(fn.arguments)//打印传递进来的所有实参
}
fn(1,4,7,9,20)

image.png