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的大门#
全部评论
因为var时函数级作用域,递归的时候,又重新创建了s,返回的肯定是最后一次创建的s
点赞 回复 分享
发布于 2022-09-07 09:18 江苏
现在看到代码就不想看
点赞 回复 分享
发布于 2022-07-05 11:35

相关推荐

点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-05 04:14
已编辑
真烦好烦真烦:看着感觉好强啊,这都过不了吗
投递字节跳动等公司10个岗位 面试中的破防瞬间
点赞 评论 收藏
分享
在debug的柠檬精很迷人:好消息:现在HR挑三拣四 15年后 HR跪着求要简历 坏消息:被挑的是这代人,到时候求人的也是这代人。真好。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务