为什么不能在函数内通过给arguments对象添加数组传递参数?

function sum(a1,a2)
{
    arguments = [5,6];
    var x = a1+a2;
    alert(x);}
sum();

参数不是以数组存储在arguments对象中吗?
为甚么弹出NaN?

大话西游666
浏览 559回答 1
1回答

互换的青春

是,你是重新赋值了arguments,但是a1和a2的值不会从arguments自动赋值过去的,a1和a2的值获取还是在你调用sum()的时候获取的,你没传参,自然是NaN,所以这里,arguments确实是有数据的,5和6,你赋值的,a1和a2是没有数据的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript