猿问

JS函数传递变量问题

function sidEffecting(ary) {

    ary[0] = ary[2];

}

function bar(a,b,c) { 

    c = 10;

    sidEffecting(arguments);

    return a + b + c;

}

var res = bar(1,1,1);

console.log(res);

如果function bar(a,b,c=3),设置了c有默认值后,最后得到的res是不一样的
问:设置了c=3后,sidEffecting(arguments);arguments中的c为什么没有被c=10改写;
函数的参数设置了默认值和没有设置有什么区别?

holdtom
浏览 394回答 1
1回答

浮云间

看这个msdn
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答