You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何这段JavaScript代码出现undefined及类型错误?

代码错误分析与修复

错误原因

  • 调用forEach时传参逻辑错误:你写的data.forEach(consoleItem())是直接执行了consoleItem函数,而非将函数本身作为回调传递给forEach。
  • consoleItem函数没有返回值(默认返回undefined),所以forEach实际接收的参数是undefined,这会触发报错;同时consoleItem执行时没有传入任何参数,内部的item、index、arr全为undefined,打印结果自然也是undefined。

解决逻辑

  • 直接传递函数引用给forEach,把consoleItem()改成consoleItem即可。这样forEach遍历数组时,会自动将当前元素、对应索引、原数组作为参数传给consoleItem,实现预期功能。

修复后的代码:

const data = ['1','2','3','4','6'];

const consoleItem = (item, index ,arr) =>{
    console.log(item);
    console.log(index);
    console.log(arr);
} 
data.forEach(consoleItem)

内容的提问来源于stack exchange,提问作者Anil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 19:43:04