What is the difference between arguments and parameters in javascript?

I know that a parameter is a variable passed to a function and gives value to the argument in the function, but I’m having trouble understanding:

What is the main difference between “arguments” and “parameters” in javascript?

The parameters are the aliases for the values that will be passed to the function. The arguments are the actual values.

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

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

When you define a function, the variables that represent the values that will be passed to it for processing are called parameters. For example, the following function definition has one parameter called $number:

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

However, when you use a function, the value you pass to it is called an argument. So, in the following case, $price is passed as the argument to doubleIt():

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

parameters (if any) define the method signature.
Arguments are values passed into a function.

But same difference I guess.

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

function(1, "Hello World") 1 and “Hello World” are passed as arguments. The parameter receives (if you like) the argument.

It is explained well here

13 Function Definition


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

Officially they are called parameters, but the actual arguments are given in the same called object. However, both words are interchangeable.

Read More:   Type of Generic Stateless Component React? OR Extending generic function interface in typescript to have a further generic?

Parameters are properties of a function.

Arguments are properties of a particular call to a function.

In javascript, if you don’t give a number of arguments equal to the number of parameters, the extra come across as 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

so parameters works just like a place holder for your arguments
when you going to call the function to give it a value you will give the function a value and that value stored in the place of parameter1 and parameter2

function add (parameter1 , parameter2 ) {
  return parameter1 + parameter2; 

add(10 (argument 1), 20 (argument2 ))

The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .

Similar Posts