Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当具有内部循环时,映射未返回数组_Javascript_Arrays_Loops_Ecmascript 6 - Fatal编程技术网

Javascript 当具有内部循环时,映射未返回数组

Javascript 当具有内部循环时,映射未返回数组,javascript,arrays,loops,ecmascript-6,Javascript,Arrays,Loops,Ecmascript 6,示例是一个数组,为什么上面的代码不使testTrue变成[true,false]?我没有定义,是因为forEach吗 这是有效的 const testTrue = sample.map((condition) => { return Object.values(objects).forEach(value => { return someFunc(condition.abc, value) }) }); 实际上,它不返回任何内容,如果您查看,您可以看到它的Retur

示例是一个数组,为什么上面的代码不使testTrue变成
[true,false]
?我没有定义,是因为forEach吗

这是有效的

const testTrue = sample.map((condition) => {
  return Object.values(objects).forEach(value => {
    return someFunc(condition.abc, value)
  })
});
实际上,它不返回任何内容,如果您查看,您可以看到它的
ReturnValue
未定义的

这就是为什么
map
调用在代码中不返回任何元素的原因:

const testTrue = sample.map((condition) => {
  return someFunc(condition.abc, value)
});
调用
returnsomefunc(condition.abc,value)
是无用的,就好像你没有写任何东西一样

解决方案:

您可以通过调用来更改
forEach()
,以返回数组的转换元素:

const testTrue = sample.map((condition) => {
  return Object.values(objects).forEach(value => {
    //The following will be ignored
    return someFunc(condition.abc, value)
  })
});

返回到
forEach
回调的值将被忽略。你在那里想干什么?您能否给出
条件
对象
的示例以及您的预期输出?您还能否提供有关
示例
数组中将出现的内容的信息?请发布您的someFunc定义,以及您希望如何使用您的解决方案在数组中获得结果。
const testTrue = sample.map((condition) => {
  return Object.values(objects).map(value => {
    return someFunc(condition.abc, value)
  })
});