var j=0;
for (i=0;i<100;i++){j=j++;}
console.log(j);
以上的输出的结果是 0;再来看看这个
var j=0;
for (i=0;i<100;i++){j++;}
console.log(j);
为什么 j =j++; 之后循环的值为 0 呢;这主要是没理解 ++ i 和 i ++ 这种写法的执行导致的
i++ 返回原来的值 (先赋值再运算),++i 返回加 1 后的值(先运算后赋值)
var j=0;
for (i=0;i<100;i++){j=++j;}
console.log(j);
因此,为了方便理解在非在必要条件下建议避免书写 i =i++; 这样的赋值语句