• 在JavaScript中,++在前和++在后有什么区别


    一、
    ++可以与输出语句写在一起,++写在变量前和写在变量后不是一个意思
    ++ i 和 i ++ 区别在于运算顺序和结合方向。

    在JavaScript中有两种自加运算,其运算符均为 ++,功能为将运算符自加 1。
    其中:
    ++ VAR 被称为前自加,其后面的变量执行自加操作,其运算为,先执行自加操作,再引用VAR值。
    VAR ++ 被称为后自加,其前面的变量执行自加操作,其运算为,先引用VAR值,再进行自加操作。

    如果自加语句独立成为一个单独的语句,那么前后自加是完全相同的。
    比如单独的一行

    a ++; 和 ++ a; 是一样的。
    1
    再比如,常见的for循环:

    for(i = 0; i < 100; i ++)
    for(i = 0; i < 100; ++i)
    1
    2
    这里用到的 ++ i 和 i ++ 是完全相同的,没有区别。

    二、
    当运算变量本身值会在自加语句中,同时执行其它操作,二者就有区别了。
    比如

    var i = 0;
    while( i ++ < 10);
    1
    2
    i会先和10比较大小,然后执行自加。这样当i=10时,退出循环,再执行一次自加,退出后i值为11。
    而如果写成

    while(++ i < 10);
    1
    是先执行自加,然后再与10比较。这样在i=9时,先自加,得到i=10,然后比较就会退出循环了。这种情况下,退出后i值为10。

    再举一个例子。

    var a, i = 10;
    a = i ++; //这里i要先赋值,再自加。语句执行后a=10, i = 11;
    1
    2
    而如果写成:

    var a, i = 10;
    a = ++i; //这里i要先自加,再赋值。语句执行后a=11, i = 11;
    1
    2

    ————————————————
    原文链接:https://blog.csdn.net/qq_28766729/article/details/83478968

  • 相关阅读:
    负载均衡
    重写类的Equals以及重写Linq下的Distinct方法
    关于URLEnCode,URLDeCode,Base64,公钥私钥
    JAVA 从头开始<六>
    JAVA 从头开始<五>
    JAVA 从头开始<四>
    JAVA 从头开始<三>
    JAVA 从头开始<二>
    JAVA 从头开始<一>
    ASP.Net MVC OA项目笔记<六>
  • 原文地址:https://www.cnblogs.com/ZXH-null/p/12090997.html
Copyright © 2020-2023  润新知