s定义在外面和里面完全不一样?


const _flatten = arr => {
                var s=[]
                if(arr.length==2){
                    s.push(arr[0])
                    _flatten(arr[1])
                }else{
                    s.push(arr[0])
                }
                return s
            }
------------------------------------------------------------------------------
var s=[]
const add = arr => {
                if(arr.length==2){
                    s.push(arr[0])
                    add(arr[1])
                }else{
                    s.push(arr[0])
                }
                return s
            }


#建设银行暑期实习##2022春招##咪咕互娱##打开Python的大门#
全部评论
现在看到代码就不想看
点赞 回复
分享
发布于 2022-07-05 11:35
因为var时函数级作用域,递归的时候,又重新创建了s,返回的肯定是最后一次创建的s
点赞 回复
分享
发布于 2022-09-07 09:18 江苏
滴滴
校招火热招聘中
官网直投

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务