猿问

无法通过 forEach 在 javascript 中返回搜索值

我试图通过 forEach 返回搜索到的元素,但不幸的是,它没有返回正确的值,而是通过 for 循环,可以在搜索后返回正确的值。


function search(arr, searchValue) {

  arr.forEach((_eachItem,i)=> {

    if(_eachItem===searchValue) {

      return i

    }

  })

  

  return -1

  

//   for(let i=0;i<arr.length;i++) {

//     if(arr[i]===searchValue) {

//       return i

//     }

//   }

//   return -1

}



console.log(search([11,1,2,3,4,9],9))


MM们
浏览 100回答 2
2回答

慕容3067478

forEach返回undefined,你应该使用的是includes。function search(arr, searchValue) {  return arr.includes(searchValue);}console.log(search([11,1,2,3,4,9],9))

慕斯王

从forEach回调返回不从外部函数返回。你可以使用Array#indexOf。function search(arr, searchValue) {&nbsp; return arr.indexOf(searchValue);}console.log(search([11,1,2,3,4,9],9))
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答