function test( a, b){ arguments[0] = 1 arguments[1] = 9 console.log("a",a); //1 console.log("b",b); //undefined console.log("形参长度",test.length); //2 console.log("实参长度",arguments.length); //1 console.log("实参数组",arguments); //[1,9] } test(2);
我很不懂为何b是undefined呢?
既然a能从新赋值,为啥b不能?数组
原本我是认为a,b分别对应arguments[0]和arguments[1],通过一番研究这是不彻底正确的code
arguments第一个值就是a,b没有传值没有存储到arguments,不管arguments怎样赋值 b都是undefind。
终于解决了心头大石io