let i = -1
let j = -1
// 0..2 要求
while (i++<3) {
console.log(i) // 0 1 2 3
}
while (++j<3) {
console.log(j) // 0 1 2
}
本人写其余代码多了就遗记了最早学习的自增的坑了,这里来填坑
这里 i++<3
为什么会打印 0 1 2 3
?
因为 i++<3
运行中 i++
间接先返回 i
并没有进行自增,
所以能够看成 i<3
进行比拟,而它的自增是在运行i++<3
完这语句后才(外部)执行了
一句话 先 i<3
比拟 后 i+1
而 ++i<3
则是先 i+1
后 i<3
参考 后置自增(Postfix increment) ,前置自增(Prefix increment)
也好记:i++
++
在前面就是先返回 i
后 +1
++i
++
在后面就是先 +1
后返回 i
发表回复