形参和实参
1、形参
定义:形参全称为形式参数,是在定义函数名和函数体时使用的参数。目的是用来接收调用该函数时传进的参数。
2、实参
定义:实参,全称为实际参数,是在调用时传递给函数的参数。
实参可以是常量,变量,表达式,函数等,但必须是确定的值。
在函数调用中,行参和实参是不同的变量,他们在内存中位于不同的位置。形参将实参的内容复制一份,在该函数运行结束的时候,形参被释放,实参不会改变。
tip:行参和变量名相同的情况:
function myfunc(a){
alert(a); //弹出hello;
var a = a +"world"; //hellow
alert(a); //hellowworld
alert(b); //hellowworld
}
myfunc("hello");
1、如果局部变量仅仅是声明而没有赋值,那么使用的将永远是形参。因为能从内存中查到与形参同名的引用,实际已经赋予形参同名的值了。
2、函数名和形参同名,但在函数体内会使用形参,而不是函数本身(即不会形成递归)。
3、arguments 对象可以直接在函数内使用,它是 Function 类的一个属性,用于获取传递给函数的参数。
但是不推荐使用重名,容易引起混淆。
![](https://img2018.cnblogs.com/blog/1247144/201810/1247144-20181026105210176-736980108.jpg)