关于javascript递归时,找到对应数据退出循环的问题

近日在写javascript递归逻辑,写完后以为没问题,实测的时候发现很多bug,发现递归找到数据后还在往下递归,或者没找到退出了

网上百度到一个样例和我的很符合,贴一下,第一张图片是问题,第二张是解答

 

 解释一下:deep是个箭头函数,也就是个方法

deep(arr[i])是一个布尔值

在循环数据的时候deep方法会返回一个布尔值,用于区分是否找到了要找的值,true找到了,false没找到,

没找到值就会返回false往下循环,找到了就会返回true跳出循环,

核心原理就是将递归方法放入了判断中,判断时会接着调用deep(arr[ i ])方法,递归寻找数据

 

posted @ 2023-07-21 14:09  Harry宗  阅读(566)  评论(0)    收藏  举报