生成一个长度为m,每一项都是n的数组

今天看到一个题目,要求写一个函数,参数为m,n,生成一个长度为m,每一项都是n的数组,不能用循环。

刚看到前半部分,感觉so easy  但是看到不能用循环几个字,心里就咯噔一下(大家不要见怪,本人初入前端,涉坑未深)。那该怎么办呢?

想了一会,用递归吧。 代码如下

function creatAry(m, n) {
    var ary = [];
    function aryPush(m, n) {
        if (ary.length == m)return ary;//递归结束条件
        ary.push(n);
        return aryPush(m, n);//这里必须要写return,否则输出为undefined
    }
    return (aryPush(m, n))
}
console.log(creatAry(3, 4));

或许还有其他的方法,但是我能想到的兼容的方法就这一个了,欢迎补充!


版权声明:本文为mal6a原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。