我想弄清楚,当我在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。
有人可以一步一步解释操作顺序,为什么我得到输出?
答案 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是相同的