其他分享
首页 > 其他分享> > arguments 笔试题

arguments 笔试题

作者:互联网

记录一道笔试题

function side(arr) {
    arr[0] = arr[2];
}
function func1(a, b, c = 3) {
    c = 10;
    side(arguments);
    console.log(a + b + c);
}
function func2(a, b, c) {
    c = 10;
    side(arguments);
    console.log(a + b + c);
}
func1(1, 1, 1); // 12 a:1, b:1, c:1
func2(1, 1, 1); // 21 a:10, b:1, c:10

原因在于 func1 给了 c 默认值,进入了严格模式,而严格模式下实参和 arguments 是不会共享的。

参考资料

标签:function,10,arr,笔试,func1,arguments,side
来源: https://blog.csdn.net/weixin_44335776/article/details/123580212