Warm tip: This article is reproduced from serverfault.com, please click

javascript-返回一个三角形

(javascript - returning a triangle)

发布于 2020-11-27 10:28:12

我正在尝试编写一个函数以返回反向直角三角形,但是我在弄清楚我要去哪里的地方时遇到了麻烦。

function triangle(num) {
  let star = ""
  for (let i = num; i >= 1; i--) {
    for (let j = num; j >= 1; j--) {
      star += "*" + "\n"
    }
  }
  return star
}

console.log(triangle(6));

我的问题是我无法使整个函数以反向三角形的形式返回*字符串。我相信我在错误的位置也炮制了'\ n',但我不确定将其更改为何处。

我收到这个:

console.log(triangle(6));    
************************************

我应该收到这个:

console.log(triangle(6));
"******\n*****\n****\n***\n**\n*"

我应该将\ n连接到字符串输出。

-这是我遇到的问题-

Questioner
andy86
Viewed
11
Bjørn Nyborg 2020-11-27 22:20:04

我认为这是你想要的:

function triangle(num) {
  let star = ""
  for (let i = num; i >= 1; i--) {
    for(let j = i; j >= 1; j--) {
       star += "*"
    }
    if(i !== 1) {
      star += "\\n"
    }
  } 
  return star 
}

console.log(triangle(6));

在此处查看示例:https//codepen.io/bj-rn-nyborg/pen/gOwOdxR

我移动+"\n"到外环,并且也被初始化let j = i,而不是num