zoukankan      html  css  js  c++  java
  • js里面for循环的++i与i++

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

    然后我们也知道for循环的执行顺序如下:

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

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

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

    相当于:

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

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

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

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

    打印出来的信息都是:










    9

    打印信息也证明了 i++ 和 ++i 的作用是一样的。

    效率问题
    ++i相当于下列代码 
    i += 1; 
    return i; 
    i++相当于下列代码 
    j = i; 
    i += 1; 
    return j;
    写for循环的时候都是写 ++i 而不是 i++。这样效率高。当然如果编译器会将这些差别都优化掉,那么效率就都差不多了。

  • 相关阅读:
    ST表学习笔记
    LCA学习笔记
    $ZOJ 2432 Greatest Common Increasing Subsequence$
    $SP15637 GNYR04H - Mr Youngs Picture Permutations$
    Noip2016换教室
    洛谷4718【模板】Pollard-Rho算法
    CQOI2016 密钥破解
    Poj3696 The Lukiest Number
    Noip2012同余方程
    同余
  • 原文地址:https://www.cnblogs.com/itgezhu/p/11227340.html
Copyright © 2011-2022 走看看