JS-拉平数组

   //  拉平数组 一维数组 递归函数 (选做)
        // 改为  [1000, 2000, 3000, 'hello', 10, 20, 30, 'a', 'b', 'A', 'B', 'C', '大大', 12313, 101, 202, 303]
        var nums = [
            [1000, 2000, 3000],
            'hello',
            [
                [10, 20, 30],
                [
                    'a',
                    'b',
                    ['A', 'B', 'C']
                ],
                '大大'
            ],
            12313,
            [101, 202, 303]
        ]


        var result = []//这个要定义在函数外,否则每次调用函数都会将result重新赋值为空
        function func(arr) {
            for (var i = 0; i < arr.length; i++) {
                if (Array.isArray(arr[i])) {
                    func(arr[i])//如果该元素是数组的话,继续执行func这个函数,分析arr[i]里的各个元素是不是数组
                } else {
                    result.push(arr[i])//如果不是数组的话,将该元素添加到数组末尾
                }
            }
            return result
        }

        console.log(func(nums))



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值