返回

JavaScript函数的参数

前端

函数的参数

函数的参数是传递给函数的数据,函数通过这些数据执行计算或操作,并返回结果。在JavaScript中,函数的参数可以在函数定义时指定,也可以在函数调用时指定。

形参和实参

  • 形参 :形参是函数定义时指定的参数,它们是函数内部使用的变量名。
  • 实参 :实参是函数调用时传递给函数的实际数据,它们是函数内部变量的值。

对位传参法

在JavaScript中,函数的参数是通过对位传参的方式传递的,这意味着形参和实参一一对应,形参的值由实参的值决定。例如,以下函数定义了一个名为 add() 的函数,该函数接受两个参数 ab,并返回它们的和:

function add(a, b) {
  return a + b;
}

当我们调用 add() 函数时,我们需要传递两个实参给它,例如:

add(1, 2); // 返回 3

在上面的例子中,12 是实参,它们分别被传递给形参 ab。函数内部的 ab 的值分别为 12,因此函数返回 3

默认参数

在JavaScript中,函数的参数可以指定默认值。默认值是在函数调用时没有传递实参时使用的值。例如,以下函数定义了一个名为 multiply() 的函数,该函数接受两个参数 ab,并返回它们的乘积。如果 b 没有被传递,则使用默认值 1

function multiply(a, b = 1) {
  return a * b;
}

当我们调用 multiply() 函数时,我们可以传递一个或两个实参。如果我们只传递一个实参,则另一个实参将使用默认值 1。例如:

multiply(2); // 返回 2
multiply(2, 3); // 返回 6

剩余参数

在JavaScript中,函数的参数还可以使用剩余参数。剩余参数允许我们传递任意数量的实参给函数,这些实参将被存储在一个数组中。剩余参数必须是函数参数列表中的最后一个参数。例如,以下函数定义了一个名为 sum() 的函数,该函数接受任意数量的实参,并返回它们的和:

function sum(...numbers) {
  let total = 0;
  for (let number of numbers) {
    total += number;
  }
  return total;
}

当我们调用 sum() 函数时,我们可以传递任意数量的实参。例如:

sum(1, 2, 3, 4, 5); // 返回 15

在上面的例子中,12345 是实参,它们被传递给剩余参数 numbers。函数内部的 numbers 是一个数组,它包含了所有的实参。函数通过遍历 numbers 数组并累加每个元素的值来计算和。

注意事项

  • 不论形参还是实参,都不需要“var”的显示声明,函数的参数只能在函数内部访问。
  • 函数最终的运算结果由实参所解决定;