递归调用js小demo

本不该做阿里的笔试题的。说好的安心工作呢。不得不说阿里的笔试题确实不错,时隔一年我确实有长进。但是还是没有达到阿里巴巴入职的水平。。。(此处省略一百字)。临提交之前就关掉浏览器了,时间来不及,水平有限,关了之后就把其中的一个题做出来了,虽然用了5分钟而已。。。

那个题是考察递归调用的,就是把一个多维数组传入一个函数,使其结果都展开,变成一个一维数组。其实挺简单的一个题目。不废话了,直接上代码:

<script>
        var b = [];
        var arr = [1,[2,34,4,2],4,[3,45,32,5,[3,4,5],6],5];
        console.log(arrX(arr)); 
        function arrX(a){
            for(var i in a){
                if(typeof(a[i])!="number"){
                    arrX(a[i]);
                }else{
                    b.push(a[i]);
                }
            }
            return b;
        }
    </script>

算法是我的弱项,发表此文来纪念我写的第一个递归程序。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。