Javascript 理解';必要性';forEach方法的参数类型

Javascript 理解';必要性';forEach方法的参数类型,javascript,Javascript,文档似乎表明,在forEach方法中,回调函数是回调函数的强制参数,currentValue是回调函数的强制参数: 但是,此代码(没有回调函数的参数)工作正常: a=[1,2,3,4,5]; a、 forEach(函数(){ 控制台日志(5); })无法强制执行函数接受强制参数。但是,如果不使用currentValue参数,则实际上没有forEach的意义;不过,您不一定需要使用任何其他参数。所有参数仍然传递给函数,如果打印出参数,您可以看到该函数 a=[1,2,3,4,5]; a、 fo

文档似乎表明,在
forEach
方法中,回调函数是回调函数的强制参数,currentValue是回调函数的强制参数:

但是,此代码(没有回调函数的参数)工作正常:

a=[1,2,3,4,5];
a、 forEach(函数(){
控制台日志(5);

})
无法强制执行
函数
接受强制参数。但是,如果不使用
currentValue
参数,则实际上没有
forEach
的意义;不过,您不一定需要使用任何其他参数。所有参数仍然传递给
函数
,如果打印出
参数
,您可以看到该函数

a=[1,2,3,4,5];
a、 forEach(函数(){
log(“参数数:”,arguments.length);
log(“当前值:”,参数[0]);
log(“索引:”,参数[1]);
log(“原始数组:”,参数[2]);

})
在这种情况下,您不使用数组的任何元素,只需打印5。对于主任务数组的任何交互,您需要currentValue来对数组进行一些操作

a=[1,2,3,4,5];
a、 forEach(函数(currentValue){
console.log(当前值,5);

})
可能是因为在不访问currentValue的情况下使用forEach是没有意义的回调中没有一个参数是必需的。毕竟您提供了回调,所以
.forEach
不可能失败,因为它接受或不接受的参数数量太多。如果你调用的函数的参数多于它声明的参数,那么什么也不会发生。谢谢@hev1。嗯,很烦人,不知道为什么他们在一些参数都是可选的情况下,还要在这些参数周围加上“可选”。@tonitone110很可能是因为如果没有
currentValue
参数,就没有必要使用
forEach