簡體   English   中英

Javascript打印三角形無法正常工作

[英]Javascript print triangle doesn't work as expected

我必須打印一個由“#”組成的三角形。

這是我的代碼:

function show(n){
  var text ="";
for(var i=1;i<=n;i++){
    for(var j=1;j<=i;j++){
        text+='#';

      }
     console.log(text);
    }

}
show(4);

對於此輸入,我得到:

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

但我想得到:

#
##
###
####

我的代碼有什么問題? 謝謝

嘗試清除外部for循環中的text

for(var i=1;i<=n;i++){
    text = "";

完整的代碼是

function show(n){
 var text;
 for(var i=1;i<=n;i++){
    text = "";
    for(var j=1;j<=i;j++){
        text+='#';
    }
    console.log(text);
 }
}
show(4);

您不需要兩個循環。 只需在每個迭代中附加一個字符並打印出來即可:

var text = "";

for(var i=0; i < n; i++){ 
 text += "#";
 console.log(text); 
}

//prints for n=8: 

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

您可以這樣循環:

<div id="result"></div>
<script>
function show(n){
    var text = "";
    for(var i=1;i<=n;i++){
        for(var j=1;j<=i;j++){
          text+='#';
        }
        text+="<br/>";
        document.getElementById('result').innerHTML = text;
    }
}
show(4);
</script>

您的輸出

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM