- 现代JavaScript编程:经典范例与实践技巧
- 张益珲
- 446字
- 2021-04-02 03:51:31
2-17 自增与自减运算符
C语言中定义了自增与自减两种运算符,它们是很多初学者的噩梦。你或许猜到了,ECMAScript中也定义了这两种运算符,并且和C语言中定义的用法基本一致。
自增运算符使用符号“++”定义,自减运算符使用符号“--”定义。简单理解,自增运算符是在操作数本身的基础上进行加1运算,自减运算符是在操作数本身的基础上进行减1运算,示例代码如下:
![](https://epubservercos.yuewen.com/534FF6/15253386804113806/epubprivate/OEBPS/Images/Figure-P57_67301.jpg?sign=1739159173-ha7pSe7UiFPoLmAj3EGxWZEx0lA1eh3z-0-54d665da81cd768b2a9d0995cac460bd)
需要注意,自增和自减运算符可以放在操作数后面,也可以放在操作数前面。如果将运算符放在操作数后面,通常称其为“后置自增/减运算符”;如果将运算符放在操作数前面,通常称其为“前置自增/减运算符”。“前置”与“后置”虽然只是一字之差,其运算过程与结果却差别很大。
先来看下面这个例子:
![](https://epubservercos.yuewen.com/534FF6/15253386804113806/epubprivate/OEBPS/Images/Figure-P57_67302.jpg?sign=1739159173-sIlXJG8QZPvlBD2v0E0J5JdRBlda1lyw-0-ed36db6e961e84a8af27f322f0d092c7)
单独打印变量c和变量d的结果都将是11,说明无论是前置自增运算还是后置自增运算,都是在原操作数的基础上进行加1运算。然而如果对“c++”和“++d”这两个表达式的返回值进行打印,可以发现前置自增运算返回的是运算完成后的值,而后置自增运算返回的是运算前的值。同样的规则也适用于自减运算符,示例代码如下:
![](https://epubservercos.yuewen.com/534FF6/15253386804113806/epubprivate/OEBPS/Images/Figure-P58_67303.jpg?sign=1739159173-sCOgpChTxPB70EtdgbdBPXlzHBijcXYe-0-95468fdb8e85a397b865d24e10615067)