在箭头函数中添加多个参数时显示错误 "argument is not defined" 但它在正常函数调用中工作

Showing Error "argument is not defined" while adding multiple arguments in arrow function but It's Working in Normal Function call

//示例 - 1

函数 add1(){

    if (arguments.length == 0){

        document.write("NO Argument Passed!");
    }
    else{

        let sum = 0;

        for(let num in arguments){

            sum += arguments[num];
        }

        document.write(sum);
    }
}

add1(5,10); 

在这个例子中,我得到了正确的结果。

//示例 - 2(带箭头功能)

令总和 = () => {

    if( arguments.length == 0){

        document.write("NO Argument Passed!");
    }
    else{

        let sum1 = 0;

        for(let number in arguments){

            sum1 += arguments[number];
        }

        document.write(sum1);
    }


};

sum(10,20);

*这里我在控制台中收到错误消息“未定义参数”。请告诉我我在哪里做的Wrong.Thank你..!

这是因为箭头函数 do not have argument bindings

选项 1 更改箭头函数以获取数组 arguments 参数

let sum = (arguments) => {
    if( arguments.length == 0){
        console.log("NO Argument Passed!");
    }
    else{

        let sum1 = 0;

        for(let number in arguments){

            sum1 += arguments[number];
        }

        console.log(sum1);
    }
};
sum([10,20]);

选项 2 rest parameters 允许无限数量的参数

let sum = (...arguments) => {
    if( arguments.length == 0){

        console.log("NO Argument Passed!");
    }
    else{

        let sum1 = 0;

        for(let number in arguments){

            sum1 += arguments[number];
        }

        console.log(sum1);
    }
};
sum(10,20);