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++隐藏了没有表现出了

 

posted @ 2018-10-16 11:23  猫昼  阅读(6251)  评论(0编辑  收藏  举报