while循环中++和++ a之间的区别

时间:2016-11-11 04:59:18

标签: javascript

我想弄清楚,当我在while循环中使用++与++ a时,为什么我会得到不同的结果?我知道他们是后缀和前缀操作,但仍然无法得到我得到结果的原因

var a = 1;
 while (a < 3) {  
   console.log(a); 
   a++;

}

我的结果:1,2,2,当使用++ a代替++时,我会得到不同的结果。

 var a = 1;
 while (a < 3) {  
       console.log(a); 
       ++a;
  }
在这种情况下,我得到1,2,3。  有人可以一步一步解释操作顺序,为什么我得到输出?

1 个答案:

答案 0 :(得分:1)

如果你在控制台中运行它,你将只获得1,2,2或1,2,3 - 在控制台外只输出1,2 - 运行此fiddle <时检查控制台/ p>

在控制台中运行时,您在控制台中看到的最后一个数字是上一次操作的“结果”...因此,第一种情况下为2(因为后增量),而3(因为预增量) )在第二个 -

如果你在}之后添加一行只有一个; - 两者都会显示1,2,3 - 像这样

var a = 1;
 while (a < 3) {  
   console.log(a); 
   a++;
}
a;

var a = 1;
while (a < 3) {  
    console.log(a); 
    ++a;
}
a;

表示在while循环结束后a是相同的