js里面for循环的++i与i++

首先咱们应该都知道++i与i++的区别是: ++i 是先执行 i=i+1 再使用 i 的值,而 i++ 是先使用 i 的值再执行 i=i+1;git

而后咱们也知道for循环的执行顺序以下:github

for(A;B;C)
{
  D;
}
进入循环执行A;//只是进入的时候执行.
执行B;//条件为真才执行D,否则就跳出for了.
执行D;
执行C;
再回到第2步开始执行
那么咱们接着看下面实例:优化

1.for (var i=0; i<10; i++):spa

for(var i = 0; i<10; i++) {
   console.log(i);
}

至关于:.net

for(var i=0; i<10;)
{
  console.log(i);
  i++;
}

2.for (var i=0; i<10; ++i):blog

for(var i = 0; i<10; ++i) {
  console.log(i);
}
至关于:编译器

for(var i=0; i<10;)
{
  console.log(i);
  ++i;
}
在上述的循环体中,i++ 和 ++i 的做用是同样的。it

打印出来的信息都是:console

0
1
2
3
4
5
6
7
8
9for循环

打印信息也证实了 i++ 和 ++i 的做用是同样的。

 

 

效率问题
++i至关于下列代码 
i += 1; 
return i; 
i++至关于下列代码 
j = i; 
i += 1; 
return j;
写for循环的时候都是写 ++i 而不是 i++。这样效率高。固然若是编译器会将这些差异都优化掉,那么效率就都差很少了。

 

参考:

https://blog.csdn.net/zgrkaka/article/details/78971977

https://blog.csdn.net/github_37847975/article/details/77369851

相关文章
相关标签/搜索