嵌套的forEach:未捕获的类型错误:data.forEach不是一个函数

5
我不想使用任何for循环或常规循环中的任何一种,我正在尝试使用forEach,但是出现了一个错误:

未捕获的TypeError:data.forEach不是函数

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;
    }
  }
});

为什么?
1个回答

8

data 是一个对象 - forEach 只能在数组类型上运行。您需要使用 for..in 循环来迭代对象的键。


我将不得不使用 lodash - Non
@NietzscheProgrammer -- 是的,或者 underscore.js - tymeJV

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接