++i与i++不是很理解

learnhtml5 JavaScript语法详解 最后由 PentaQ 于07月19日回复

  • 4 回答
  • 1.1k 浏览

按照老师的例子 var i=10 ;j=i++ 输出j=10(解释是先运算再加)我想知道运算完后还有个加的运算结果哪去了?

  • 2014年12月26日 回答 #1楼
  • ++i是先加加再运算,i++是运算后再加,意思就是运算出结果了再加

  • 0 评论
  • sedvbhj 2015年01月13日 回答 #2楼
  • var i = 10; j = i++;   这里有个小细节老师没讲,允许已经理解 i++和++了。

    关于你说的加完的运算结果:  ++i 和 i++ 其实本身表示的意思是  i = i+ 1。 所以这个结果是储存到 i 里面去了。

    i++ 本身是一个表达式(不明白什么是表达式也不影响,你就把i++当成一个整体)。

    j = i++ 是先把表达式的指进行运算(这里是赋值) 如果i= 6  那么这个时候j = 6 ,然后i再进行+1 这个时候 i= 7 了

    j = i++是先加1 把表达式的值算出来。然后在进行运算,这个时候 i = 7  j = 7

    不管是 ++i 还是 i++  i 最后都会+ 1,区别在于是用+1的值去运算,还是没+1的值去运算

  • 0 评论
  • 极客学院_Vea 2015年05月29日 回答 #3楼
  • 单独写没什么区别,如果作为表达式写在另外的语句中就有区别了

  • 0 评论