Javascript 循环外部更新的NumIterations

Javascript 循环外部更新的NumIterations,javascript,Javascript,我不明白为什么数字在变。这是圈外的。它应该保持为5,但总和应该以指数形式更新2 var NumIterations = 5; document.write ("<b>Sequence of numbers up to iteration number: </b>", NumIterations ); var sum = 0.01; for (var i=0; i<=NumIterations; i++) { docume

我不明白为什么数字在变。这是圈外的。它应该保持为5,但总和应该以指数形式更新2

var NumIterations = 5; 

    document.write ("<b>Sequence of numbers up to iteration number: </b>", NumIterations );


 var sum = 0.01;

 for (var i=0; i<=NumIterations; i++)

    { 
      document.write (sum + "<br/>");
        sum=sum*2;
    }
var NumIterations=5;
document.write(“迭代编号之前的编号顺序:”,NumIterations);
var总和=0.01;

对于(var i=0;i它没有改变。你的代码编写的方式是写
“迭代数之前的数字序列:”+5+“0.01”
,所以它看起来像是在说:“迭代数之前的数字序列:50.01”,但这只是因为你需要在0.01之前休息一下

如果在第一部分之后添加

,它将按预期工作

var NumIterations=5;
文件。写入(“迭代编号之前的编号顺序:”);
文件。书写(数字);
文件。写(“
”); var总和=0.01;
对于(var i=0;i您没有逻辑错误,只需在求和打印之前添加“

”,以分离您的
数值
求和
打印

var NumIterations = 5;
document.write ("<b>Sequence of numbers up to iteration number: </b>", NumIterations );
var sum = 0.01;
for (var i=0; i<=NumIterations; i++){ 
    document.write ("<br/>"+ sum );
    sum=sum*2;
}
var NumIterations=5;
document.write(“迭代编号之前的编号顺序:”,NumIterations);
var总和=0.01;

对于(var i=0;它是
document.write
调用可能会导致您的DOM重新加载。如果将它们替换为
console.log
,会发生什么情况?(只要可能,您应该避免使用
document.write
,因为它可能会产生意外后果,具体取决于它在DOM中加载的时间/位置)请更准确地描述代码的行为,包括与预期输出进行比较的输出这是不正确的,
document.write()
的第二个参数是以毫秒为单位的延迟