Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.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 - Fatal编程技术网

Javascript 未定义为输出。这个代码出了什么问题?

Javascript 未定义为输出。这个代码出了什么问题?,javascript,Javascript,这里的arr是数组目标是任何数字。我想返回arr的两个数字。这些数字的和等于目标中存储的值 function twoSum(arr, target) { var x= arr.forEach(e=>{ return arr.forEach(num=>{ if((e+num)===target){ return [e,num]; } }) }) retur

这里的arr是数组目标是任何数字。我想返回arr的两个数字。这些数字的和等于目标中存储的值

function twoSum(arr, target) {
       var x= arr.forEach(e=>{
       return arr.forEach(num=>{
          if((e+num)===target){
            return [e,num];
          }
        })
      })
      return x;
    }

问题在于forEach内部的return语句。forEach中的return语句的作用类似于break并停止进一步的迭代。用于循环instead@BeshambherChaukhwan
forEach
中的
return
语句在这里什么也不做。它在第一次迭代时不会返回some数组或null吗?与第0个索引一样,第一个返回将返回内部foreach结果,即数组或null,然后向上填充到外部foreach@BeshambherChaukhwan“它在第一次迭代时不会返回some数组或null吗?”1。如果第一次迭代2,它将不会进入
内部
forEach
本身根本不返回任何内容。它总是生成
undefined
,并忽略回调的返回值和非
中断是的,在这种情况下你是正确的。这里什么也没做