首页 > 编程笔记 > JavaScript笔记 > JS函数

JS函数传参(形参+实参)

JavaScript 函数的参数包括以下两种类型:

示例1

定义 JavaScript 函数时,可以设置零个或多个参数。
function f(a, b) {  //设置形参a和b
    return a + b;
}
var x = 1, y = 2;  //声明并初始化变量
console.log(f(x,y));  //调用函数并传递实参
在上面示例中,a、b 就是形参,而在调用函数时向函数传递的变量 x、y 就是实参。

一般情况下,函数的形参和实参数量应该相同,但是 JavaScript 并没有要求形参和实参必须相同。在特殊情况下,函数的形参和实参数量可以不相同。

示例2

如果函数实参数量少于形参数量,那么多出来的形参的值默认为 undefined。
(function (a,b) {  //定义函数,包含两个形参
    console.log(typeof a);  //返回number
    console.log(typeof b);  //返回undefined
})(1);  //调用函数,传递一个实参

示例3

如果函数实参数量多于形参数量,那么多出来的实参就不能够通过形参进行访问,函数会忽略掉多于的实参。在这个示例中,实参 3 和 4 就被忽略掉了。
(function (a,b) {  //定义函数,包含两个形参
    console.log(a);  //返回1
    console.log(b);  //返回2
})(1,2,3,4);  //调用函数,传入四个实参值

在实际应用中,经常出现实参数量少于形参数量的情况,但是在函数内依然可以使用这些形参,这是因为在定义函数时,已经对它们进行了初始化,设置了默认值。在调用函数时,如果用户不传递或少传递参数,则函数会采用默认值。而形参数量少于实参的情况比较少见,这种情况一般发生在参数数量不确定的函数中。

所有教程

优秀文章