Codefights:给定整数n,返回包含正好n位的最大数字

时间:2016-10-09 19:44:57

标签: javascript

所以我必须找到包含n位数的最大数字。例如,如果n = 2,那么maximumNumber = 99.这是我的答案。

function largestNumber(n) {
    var num = [];
    n = num.length;
    for(var i = 0; i < n; i++){
        num[i] = "9";
    };
    var large = +(num.join(''));
    return large;
}

不幸的是,它返回&#34; 0&#34;。当我尝试console.log数组。

function largestNumber(n) {
    var num = [];
    n = num.length;
    for(var i = 0; i < n; i++){
        num[i] = "9";
    };
    return num;
}

console.log(largestNumber(2));

我有一个空数组而不是[&#34; 9&#34;,&#34; 9&#34;]。为什么我的阵列没有形成?

3 个答案:

答案 0 :(得分:3)

为什么不使用(10 ^ n)-1?

Math.pow(10,n)的-1

答案 1 :(得分:2)

在将n定义为空数组后,您正在将n = num.length;重置为num。只要放弃这一行就可以了。

答案 2 :(得分:0)

我是这样做的:

function largestNumber(n) {
let number = "9";
for(let i=1;i<n;i++){
    number += "9";
}
return parseInt(number);
}