javascript中的参数和参数有什么区别?

时间:2012-10-13 15:20:20

标签: javascript

我知道参数是传递给函数的变量,并为函数中的参数赋值,但我无法理解:

javascript中“arguments”和“parameters”之间的主要区别是什么?

5 个答案:

答案 0 :(得分:27)

参数是将传递给函数的值的别名。参数是实际值。

var foo = function( a, b, c ) {}; // a, b, and c are the parameters

foo( 1, 2, 3 ); // 1, 2, and 3 are the arguments

答案 1 :(得分:2)

  

13 Function Definition

     

语法

FunctionDeclaration : 
    function Identifier ( FormalParameterList (opt) ) { FunctionBody } 
FunctionExpression : 
    function Identifieropt ( FormalParameterList (opt) ) { FunctionBody } 
FormalParameterList : 
    Identifier 
    FormalParameterList , Identifier 
FunctionBody : 
    SourceElements (opt)

官方称它们被称为参数,但实际参数在同一个被调用对象中给出。但是,这两个词都是可以互换的。

答案 2 :(得分:1)

参数(如果有)定义方法签名。 参数是值传递到函数中。

但我猜是相同的。

void function(int param1, string param2) //defines the types the function must receive

function(1, "Hello World") 1和“Hello World”作为参数传递。参数接收(如果您愿意)。

很好地解释了here

答案 3 :(得分:1)

参数是函数的属性

参数是函数的特定调用的属性。

在javascript中,如果你没有给出与参数数量相等的参数,那么额外的参数就是undefined

function f(a,b,c) // 3 parameters
f(1) // 1 argument given; inside the function f, a will be 1, and b and c will be undefined

答案 4 :(得分:0)

定义函数时,表示将传递给它进行处理的值的变量称为参数。例如,以下函数定义有一个名为$ number的参数:

function doubleIt($number) {
    return $number *= 2;
}

但是,使用函数时,传递给它的值称为参数。因此,在以下情况中,$ price作为参数传递给doubleIt():

$price = 50;
$inflated_price = doubleIt($price);  // 100