全部 / 前端 / 技术 · 2022年5月7日 0

parameter 和 argument 区别和联系

默认标题_公众号封面首图_2022-05-07+10_49_07

估计好多小伙伴没有对这两个名字有很明确的区分,编程的时候会混用:

有时候这样:

function Foo(args){
    // ...
}

有时候也会这样:

function Foo(params){
    // ...
}

虽说这里的名字写什么都行,但是若对这两个名词有深刻的认识就不会在一个项目中混用。一是显的杂乱、不统一,二是显的不专业。

那它俩有啥区别和联系呢?

  1. parameter 是把传递给函数的参数命名的,它把 argument 引入到函数。
  2. argument 是传递给函数的值(原始类型的值和对象类型的值)。

看这个例子:

function example(parameter) {
  console.log(parameter); // Output = foo
}

const argument = 'foo';

example(argument);

看到了吧,parameter 是形参对参数命名,而 argument 是实参传递给函数的实际参数。

  • Function parameters are the names listed in the function’s definition.
  • Function arguments are the real values passed to the function.
  • Parameters are initialized to the values of the arguments supplied.

参考:

  1. https://developer.mozilla.org/en-US/docs/Glossary/Parameter
  2. https://developer.mozilla.org/en-US/docs/Glossary/Argument
  3. https://en.wikipedia.org/wiki/Parameter_%28computer_programming%29#Parameters_and_arguments