javascript - 如何修复此 javascript foreach 错误?

标签 javascript arrays reactjs list object

我有一个形式为

的对象
res = { 2019: 
[
{id: 1, points: 435},
{id: 830, points: 230},
...
]
}

和一个数组 seasons 只是一堆年份 => ["2015","2016",..."2019"]

seasons.forEach(season => {
     res[season].forEach(item => {
     console.log(item);
   });
});

上面的片段正确记录了每个结果,但我仍然收到此错误:Unhandled Rejection (TypeError): Cannot read property 'forEach' of undefined

最佳答案

你可以使用 optional chaining轻松解决这个问题。只需在嵌套的 forEach 前添加一个问号,如下所示:

seasons.forEach(season => {
     res[season]?.forEach(item => {
     console.log(item);
   });
});

注意:如链接文档的兼容性部分所述,并非所有浏览器都支持可选链接,因此您可能需要使用转译器(如 Babel)

关于javascript - 如何修复此 javascript foreach 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60535457/

相关文章:

javascript - 响应表在填充时会失去响应能力

javascript - Tslint 升级错误

javascript - Array.splice() 在数组文字上以一种方式运行,在保存为 const 的数组上以另一种方式运行

javascript - 如何模拟 React Component 的功能并挂载组件?

javascript - 功能组件中 useEffect() 内的 useState()

javascript - CSS 不透明度过渡不适用于 Safari

javascript - JIT - 将 Spacetree 保存为图像

javascript - 不使用 jquery Datepicker 选择日期范围

java - 将base64编码的字符串转换为java字节数组

javascript - ng-click 触发 app.js 中的函数不起作用