将 for Of 循环表达式转换为数组可迭代语句的困难

difficulty in coverting a forOf loop expression to array iterable statement

我目前在将天气应用程序中的 forOf 循环语句转换为数组可迭代表达式时遇到困难。 forOf 语句有效,但 .eslintrc.JSON 将其标记为无限制语法错误。

给定数组:

 const results = [

    { elementId: '#result-temp', value: `${temp}°` },

    { elementId: '#result-place', value: place },

    { elementId: '#result-weather', value: weatherTitle },

    { elementId: '#result-weather-desc', value: weatherDesc },

    { elementId: '#result-feeling', value: `${feeling}°` },

    { elementId: '#result-humidity', value: `${humidity}%` },

    { elementId: '#result-pressure', value: `${pressure}mb` },

    { elementId: '#result-mintemp', value: `${minTemp}°` },

    { elementId: '#result-maxtemp', value: `${maxTemp}°` },

  ];

有效的 forOf 表达式:

  for (const { elementId, value } of results) {

    document.querySelector(elementId).innerText = value;

  }

我使用 forEach 但不起作用

 results.forEach( value => {

  document.querySelector(elementId).innerText = value;
  
  })
}

在接触到这里之前,我已经在互联网上搜索并阅读了很多文档来寻找想法。请问,我错过了什么?

你没有第二次解构:

试试这个:

results.forEach(({ elementId, value }) => {
  document.querySelector(elementId).innerText = value;
})

正在考虑您的代码段

results.forEach( value => {

  document.querySelector(elementId).innerText = value;
  
  })

上面的value将是数组的每一项(这是一个具有两个属性的对象)。