簡體   English   中英

Javascript While循環中的不良輸出

[英]Undesired output in Javascript While loop

我得到以下代碼的輸出為n = 3,x = 6,但我需要輸出為

n = 1, x = 1
n = 2, x = 3
n = 3, x = 6

有人可以幫我在代碼中添加什么嗎?

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>

    function myFunction() {
        var n = 0;
        var x = 0;
        while (n < 3) {
            n++;
            x += n;
        }
        document.getElementById("demo").innerHTML = "n = " + n + ", " + "x = " + x;
    }

</script>

</body>
</html>

@Jai下面的例子很相似,

function myFunction() {
    var text = "";
    var i = 0;
    while (i < 10) {
        text += "<br>The number is " + i;
        i++;
    }
    document.getElementById("demo").innerHTML = text;
}

輸出是

The number is 0  
 The number is 1
  ...
function myFunction() {
    var n = 0;
    var x = 0;
    while (n < 3) {
        n++;
        x += n;

    document.getElementById("demo").innerHTML += 
    "n = " + n + ", " + "x = " + x;
    }

}

您必須“添加”到內部html。 因此,將“ + =”放在循環中。

連接innerHTML並將其放入循環中:

document.getElementById("demo").innerHTML += 
"n = " + n + ", " + "x = " + x;

} // <---end of while

您的代碼執行while循環3次,每次更新n和x的值。 但是,因為您將輸出寫在while循環之外,所以只能看到最后一個值。 您需要在while循環內放置一行顯示變量的行。

暫無
暫無

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

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