Js 中的i++ 和 ++i 的区别
首先碰见 i++ 和 ++i 会一脸蒙蔽 感觉没什么区别,都是相加 , 但是 输出的值是不同!!!
来奉上代码来进行比较
var i = 1; var a = i++; //a = 1; 此时i为2,但赋给a的是1 var b = ++i; //b = 3
1.前置递增(++): 在变量的前面,先自身执行加法操作后在赋值(++i);
2.后置递增(++): 在变量的后面,先赋值后在执行加法操作(i++);
3.前置递减(--): 在变量的前面,先自身执行减法操作后在赋值(--i);
4.后置递减(--): 在变量的前面,先赋值后在执行减法操作(i--);
实在看不懂的话,用最简单的话来讲讲
i++ 和 ++i 从表面看,有没有发现区别???
是不是发现一个i在前,一个i在后!!!
i在前就是说 输出的是 i 本身 但是!!!i 还是会自增1 只是没有赋值 eg:
i = 2; a = i++; console.log(a)// a = 2; console.log(i)// i = 3;
i在后就是说 输出的是 i 自增后的值 并且赋值 eg:
i = 2; a = ++i; console.log(a)// a = 3; console.log(i)// i = 3;
这下应该明白了吧...
最后!一定要记住一点就是 i++和++i 都会自增,只不过i++隐藏了没有表现出了