Javascript 循环迭代的显示
这是一个基本的for循环问题。如果我有一个简单的for循环,例如:Javascript 循环迭代的显示,javascript,html,arrays,for-loop,Javascript,Html,Arrays,For Loop,这是一个基本的for循环问题。如果我有一个简单的for循环,例如: function printMe() { for(var i = 0; i < 5; i++) { document.getElementById("text").innerHTML = i; } }; printMe(); 函数printMe() { 对于(变量i=0;i
function printMe()
{
for(var i = 0; i < 5; i++)
{
document.getElementById("text").innerHTML = i;
}
};
printMe();
函数printMe()
{
对于(变量i=0;i<5;i++)
{
document.getElementById(“text”).innerHTML=i;
}
};
printMe();
当我调用函数时,它只打印循环5中的最后一个数字。但是,我如何才能让它打印循环的任何一次迭代,从而使最终列表为0、1、2、3、4、5您不断地覆盖
innerHTML
的值,因为您使用的是innerHTML=I
。这意味着当循环完成运行时,该值将是i
的最后一个值
您需要使用+=
将i
附加到现有值,并且您可能还需要在该值之后添加一个空格,以便它们不会粘在一起
document.getElementById("text").innerHTML += i + " ";
这是一个简写符号
document.getElementById("text").innerHTML = document.getElementById("text").innerHTML + i + " ";
因此:获取旧值,添加新值,再次将其存储在
innerHTML
中 问题是您要将i
分配到innerHTML
每个循环中(而不是append+=
),因此只有最后一个输出是预期的行为
试试下面的方法就可以了
function printMe()
{
for(var i = 0; i < 5; i++)
{
var innerHTML = document.getElementById("text").innerHTML;
document.getElementById("text").innerHTML += (innerHTML.length <= 0 ? "" : ", ") + i;
}
};
printMe();
函数printMe()
{
对于(变量i=0;i<5;i++)
{
var innerHTML=document.getElementById(“text”).innerHTML;
document.getElementById(“text”).innerHTML+=(innerHTML.length您需要编写一些代码来读取现有值,然后使用新值和所需的逗号对其进行修改。您总是在替换.innerHTML,但需要向其追加:document.getElementById(“text”).innerHTML+=i+,”
非常感谢!计时器用完时,会将答案标记为正确