参数是相对于函数而言的。
举个例子:
function example1(形参1,形参2,......){
}
example(实参1,......)
实参数目与形参数目不一定对等,但是他们也存在着一一对应的关系
数目不对等有两种情况:
1.形参数目大于实参数目
function example2(a,b,c,d){
// 这里有四个形参一个实参
// 除了第一个形参有对应的实参,值为1外,其余都是undefined。
}
example2(1)
2.实参数目大于形参数目
function example3(a){
// 这种情况下,通过形参是无法得出实参的值的,但是通过参实参列表却可以
// 哪怕开启了严格模式也一样
console.log(a) // 1
console.log(arguments[0]) // 1
console.log(arguments[1]) // 2
console.log(arguments[2]) // 3
console.log(arguments[3]) // 4
}
example3(1,2,3,4)
刚刚提到了实参列表,现在,我们来看看、实参列表与实参的关系
在这里提两种实参列表无法修改实参的情况:
1.实参数目少于形参数目,少掉那部分就不能修改了
举个例子:
function example4(a,b,c,d){
arguments[0] = 5;
console.log(a); // 5
arguments[1] = 10;
console.log(b); // 10
arguments[2] = 8;
console.log(c); // undefin