• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

i++ 和++i的差別

New Document



0





假设我这边把++i换成i++,为什么就不会计时了,这是什么逻辑呢?

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与3

a=++i,先让i+1,再赋值给a;a=++i,先将i赋值给a,再让i+1;
如上面这个例子, 先说++i的情况,
第一次循环:$div.html(++i)这句话之前,i=0,因此,先加1,再传递给html,所以html显示为1
第二次虚幻:因为刚才div的html为1了,所以$div.html(++i)这句话之前,i=1,再加1,再传递给html,显示2
所以++i是可以运行的;
i++的情况,
第一次循环:$div.html(++i)这句话之前,i=0,先将i=0传递给html,再加1,所以第一次循环结束时,html显示0,但是此时的i是1;
第二次循环:i是1,但是经过这句话i = parseInt($div.text()),i又变成了html的值(即0),然后又重复第一次循环,所以你看到一直是0;
你可以在 $div.html(++i);前后加上alert(i)进行测试

使用道具 举报

a=i++ 其实是 a=i;i++;
a=++i 其实是 i++;a=i;

使用道具 举报

相同点:
i++和++i都是自增1.

不同点:
++i是先做i+1,再执行后面语句。(执行完本条语句i=i+1)

i++是先执行完后面语句,才+1。(执行完后面语句i=i+1)

为什么不计时:
可以理解为没有执行完后面语句,也就是循环未结束(无限循环)经过i = parseInt($div.text()),i也是0。
什么逻辑:
就是这个逻辑。

使用道具 举报

发新帖

发布任务需求已有1031289位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!