Javascript 这个循环是如何工作的

Javascript 这个循环是如何工作的,javascript,Javascript,我有两个问题: 一, 输出: 我在循环! 我在循环! 我在循环! 二, 问题:为什么输出包含“2” 二, 问题:这个循环是无限循环,有什么问题吗?第一个循环实际上并没有输出2。您可以在控制台中看到它,因为控制台还输出代码的最后一个表达式的结果,该结果在最后一次递增之前是count 在第二个循环中,只有第一个代码块属于循环do。。。。虽然在它中,count变量永远不会递增,因此有一个无限循环 编辑: 要使第二个循环按预期的方式工作,您需要了解do…while循环是如何工作的。与正常的while循环

我有两个问题: 一,

输出: 我在循环! 我在循环! 我在循环! 二,

问题:为什么输出包含“2”

二,


问题:这个循环是无限循环,有什么问题吗?

第一个循环实际上并没有输出2。您可以在控制台中看到它,因为控制台还输出代码的最后一个表达式的结果,该结果在最后一次递增之前是count

在第二个循环中,只有第一个代码块属于循环do。。。。虽然在它中,count变量永远不会递增,因此有一个无限循环

编辑:

要使第二个循环按预期的方式工作,您需要了解do…while循环是如何工作的。与正常的while循环相反,它们至少执行一次。将循环的部分是do和while之间的代码

所以我想,你想要的代码应该是这样的:

count=1;
console.log("start");

do {
    console.log("I'm looping!")
    count++;
}
while(count < 3)

你能用小提琴来演示这个问题吗,我觉得很奇怪。怎么可能无限大?@Girish浏览器停止了。那么我怎么才能更改代码来解决问题二??问题一显示三点后的二我在循环,是因为我在做教程,还是因为你把代码放进了浏览器的控制台?在浏览器中按F12可弹出控制台。此控制台始终自动输出您提供给它的代码中最后计算的表达式。因此,在运行第一个示例代码之后,它将输出2,因为这是最后一次计数的结果++。
count=1;
do {
    console.log("start");
}

while(count < 3){

    console.log("I'm looping!")
    count++;
}
count=1;
console.log("start");

do {
    console.log("I'm looping!")
    count++;
}
while(count < 3)