++a和a++的区别。

先来看2段js代码

var a=0;
var b=0;

while(a<10)

{

document.write(a++);

}

document .write("<br>");

while(b<10)

{

document.write(++b);

}

  

结果是0~9和~1~10

这证明了2个问题:

第一:循环的次数是相等的

第二:如果是a++的话,每一次进行一个自加的话,都是不会返回当次自加的结果,而是上次循环得到的结果(老的)

如果是++a的话,每次循环,返回最新的结果,也就是+1以后的结果。

 

我们再来看看下面的代码:

for(var i=0;i<10;i++){document.write(i)}
document.write("<br>");
for(var i=0;i<10;++i){document.write(i)}

  

里面的2段代码的结果都是一样的都是0~9

为什么这里一样了呢?因为刚才说过,i++或者++i是作为返回值然后显示出来,

而这里的i++和++i是作为执行次数来操作的,并没有返回值,而他们的执行次数是一样的

 

再来做一个变体

 

for(var i=0;i<10;i++){document.write(++i)}  //1,3,5,7,9
for(var i=0;i<10;i++){document.write(i++)}  //0,2,4,6,8

  

显示结果分别又是是什么呢?

首先我们可以确定的是:for循环里面的i++是不会有返回值的,但是会+1,

而后面的++i是会有返回值的,所以结果就是上面注释的结果了。

 

 

 

posted @ 2014-03-22 14:50  KMSFan  阅读(1162)  评论(0编辑  收藏  举报
document.getElementById("homeTopTitle").innerText="ღKawaii";