Javascript函数输出带换行符的字符串以创建一个直角三角形

时间:2016-11-27 21:04:45

标签: javascript

我正在接受Javascript课程的介绍,并且卡在了作业上。

编写一个名为drawTriangle的函数,该函数返回以下字符串。您可以使用console.log随意调试打印,但请确保该函数实际返回一个字符串。

请注意,在字符串中,回车符(相当于点击“Enter”或“Return”键)是“\ n”。

#
##
###
####
#####
######
#######

我最初的想法是,我会使用一个循环来填充一个数组(希望找到一种方法将数组作为带换行符的字符串输出)但我仍然坚持这一点而不确定如何前进(或者如果我朝错误的方向前进的话)。

我目前的脚本如下:

function triangle(number) {
    var triElements = [];
    var pound = '#';
    var rightTriangle = '';
    var lineBreak = '\n';
    for (var i = 0; i < number; i++) {
        var rightTriangle = rightTriangle.concat(pound)
        triElements.push(rightTriangle);
    }
    return triElements;
}

console.log(triangle(6))

2 个答案:

答案 0 :(得分:2)

您将返回一个数组而不是单个字符串中的三角形。我认为你通过使用数组存储结果来思考它,只需使用像这个例子中的字符串:

function triangle(numOfLayers) {
    var result = '';
    var symbol = '#';
    var layer = '';
    var lineBreak = '\n';
    for (var i = 0; i < numOfLayers; i++) {
        layer += symbol; // add one symbol to last layer
        result += layer + lineBreak; // append an extra line to the result
    }
    return result;
}

console.log(triangle(6))

答案 1 :(得分:1)

在退货声明中使用triElements.join("\n");