javascript - 嵌套 forEach : Uncaught TypeError: data. forEach 不是函数

标签 javascript

我不想使用任何 for 循环或任何常规循环,我正在尝试使用 forEach 但出现错误

Uncaught TypeError: data.forEach is not a function

return falsyData.map(function(data) {
  data.forEach(function(key) {
    if (key.match(reg)) {
      return key;
    }
  });
});

但如果我这样做,它会起作用:

return falsyData.map(function(data) {
  for (var key in data) {
    if (key.match(reg)) {
      return key;
    }
  }
});

为什么?

最佳答案

data 是一个对象 - forEach 仅在 Array 类型上运行。您必须使用 for..in 循环来迭代对象的键。

关于javascript - 嵌套 forEach : Uncaught TypeError: data. forEach 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32359735/

相关文章:

javascript - 在 ES6 类中通过 promise 设置属性

javascript - 知道绿点的坐标,使用输入将其滚动到红点周围

javascript - 如何在 Node js 中执行多个 Post 请求

javascript - 跳过第一个关于 knockout 自定义绑定(bind)的更新

javascript - 为什么我的 textarea 值没有从 getElementById 改变?

javascript - 使用 DOM 来识别序列中的数字

javascript - 在 JavaScript 中从 css 规则中提取 RGB 和 RGBA

javascript - 正则表达式 - 如何忽略匹配组的顺序?

javascript - 强制 ng-disabled 和 ng-show 重新评估自定义函数

Razor View 中 <script> 标记内的 C# 'if' 关键字