js递增递减操作符(++,--)

相信很多初学者对++,-- 在运算中是先运算再赋值还是先赋值再运算 常常会弄错,因当时学习C++时也有类似的问题,总结出判断方法,希望对这块知识点有疑问的同学有一些帮助。

1、记住一句话:递增和递减 , 目标变量的值都是加法或减法后计算所得的值,和前置还是后置一点关系都没有

如上图,num1不管是前置的++还是后置的++ , 出来后的值都是计算后的值。

2、当++, -- 运算符和 赋值运算符(=)在一个表达式中时,记住一个规律:  只有 = 和++,--在一起时(=++,=--)这样的形式才是用计算后的值与后面的再计算,否则都是用计算前的值计算

如图:= 和++ 相邻 表达式的计算逻辑 就是  先计算++ 后得到23 之后再+2  最后结果为25 25是test1的值, 根据第1条,num2为23.

如图:test2 = num2++ +2 ,因 = 和 ++ 不相邻,所以 表达式实际可以认为 test2 = num2+2 ;当前num2为23+2 = 25 没毛病。 根据第1条,此时num2为24

3、当表达式中重复出现++,--对象时,要结合 第1 和第2 条组合计算

如图:表达式 test3 = num2++ test2 +num2 ; 先计算的是 num2++ + test2  根据第2条的逻辑 计算值为 24+25 = 49 ;再根据第1 条的逻辑此时的num2 = 25  所以之后的+ num2 就是 49+25 = 74;最后输出test3为74 没毛病。

 4、此条逻辑是根据 第2条扩展的,针对复杂的表达式:当(+,-)遇到(++,--)时,按从左到右原则如(+ ++ ,+ --,- ++,- --)等只有++,--和运算符相邻,并且++,--在运算符的右边 这种情况的计算逻辑都是 先做++,-- 之后再计算。

 如图:第一次计算 num3++ + num4++ 因++在+的左边不再右边 所以 这个表达式其实就是 test4 = num3 + num4  为3 ; 计算后 num3 为2 ,num4为3

第二次计算  + ++ 符合此条逻辑 test4 = num3+ (num4+1)   ;2+3+1 = 6 ;

以上就是对前置后置递增计算优先级的分析,希望对大家有帮助。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值