我试图通过 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))
2 回答

慕容3067478
TA贡献1773条经验 获得超3个赞
forEach返回undefined
,你应该使用的是includes。
function search(arr, searchValue) {
return arr.includes(searchValue);
}
console.log(search([11,1,2,3,4,9],9))

慕斯王
TA贡献1864条经验 获得超2个赞
从forEach回调返回不从外部函数返回。你可以使用Array#indexOf。
function search(arr, searchValue) {
return arr.indexOf(searchValue);
}
console.log(search([11,1,2,3,4,9],9))
添加回答
举报
0/150
提交
取消