type
status
date
slug
summary
tags
category
icon
password

函数中return 无法退出函数的问题

1.发现并解决问题

在函数中,一般return就会退出函数,然而今天上班遇到了一个问题,就是return 不退出函数。 我想要从一个数组中获取我想要的oid,但是打印出来undefind,我发现它是进入了if (id === searchId)这个判断条件的,但是下面的条件也有执行,那我就不让他执行好了,给下面条件改为if (!result&&child && child.length > 0) ,这样就可以获取到正确的oid了。问题是解决了,但是不太清楚怎么产生的。

2.查找问题的根源

这是因为递归函数相当于是一层一层的函数嵌套在一起,所以其中的一个return只是但是那一层函数的返回,只是退出了当前层函数。 代码如下:
💡
欢迎您在底部评论区留言,一起交流~
Promise的学习监听浏览器路由