js基础篇:1、浅谈a++,++a的区别及其运算

       对于没接触过C语音或者java的人来说,刚开始接触JS的基础运算符++,--  可能会决定有点奇怪,接下来我用通俗易懂的方法描述一下。(只适合和我一样同为小白的人噢)


一、算术运算符++,--的定义

  • a++  自增,执行表达式后再进行自增运算,返回的a为a+1
  • ++a  自增,进行自增运算后再执行表达式,返回的a为a+1
  • a--    自减,执行表达式后再进行自减运算,返回的a为a-1
  • --a    自减,进行自减运算后再执行表达式,返回的a为a-1

可能看了上面的定义后,还是有点不理解,简单来说:

  • a=1,经过一次a++或者++a后,a就等于2了。

  • a=2,经过一次 a-- 或者 --a 后,a就等于1了。

在单独使用a++和++a时,这两者计算后的a是没有太大区别的,a--和--a同理,看下图可知

二、再举些运算的"栗子"

赋值使用

当把单个a++或者++a赋值给b时,我们得到是这样的结果

为什么会出现这种情况?这是因为b = a++ 时,会先把a的值执行表达式,也就是先把a赋值给b后,a再进行自增。简单来说就是:

b = a++b = a, a = a+1也就是 b = 1, a = 1+1,最后得到的结果为b=1,a=2。

b = ++a就不同了,b = ++aa = a+1,b = a也就是a = 1+1, b = a,最后得到的结果为b=2,a=2。

同理可得var a = 1,b = a--var a = 1,b = --a的结果分别为b=1,a=0; b=0,a=0。

多次运算

  • 案例1

只要你看懂了上面的描述,那下面这道题对你来说应该就轻而易举了。

可得: b=12,a=2

在看完上面的例子,是不是你也和我得到了一样的结果呢?如果感觉理解加深了点,赶紧点开F12调试工具来自己尝试下以下例子吧。

  • 案例2

  • 案例3

PS:以上就是我对a++,++a等运算符的个人见解啦,如果有哪里说得不对的地方还请大家帮忙指正,谢谢~~

转载于:https://my.oschina.net/chendejie/blog/3074990

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值