【问题标题】:Assignment and increment at the same time gives error, why?赋值和增量同时报错,为什么?
【发布时间】:2018-09-07 10:19:27
【问题描述】:

我得到 Uncaught ReferenceError: Invalid left-hand side expression in postfix operation。 这是代码:

var visitNumber = parseInt("1")++;

【问题讨论】:

  • 这在语法上没有意义。在可以设置 visitNumber 的值之前,已对右侧表达式进行了完全评估,并且该表达式没有意义。递增/递减运算符必须对变量或对象属性的有效引用进行操作。

标签: javascript


【解决方案1】:

parseInt("1") 生成一个常量,即1,您不能更改常量。您需要先将它分配给一个变量(正如@OriDrori 在他的回答中提到的那样),然后增加变量。

【讨论】:

    【解决方案2】:

    ++ 的左边必须是一个变量,不能是其他任何东西。

    要么使用这个:

    var visitNumber = parseInt("1") + 1;
    

    或者这个:

    var visitNumber = parseInt("1");
    visitNumber++;
    

    【讨论】:

      【解决方案3】:

      您不能增加数字。您可以增加变量的值。加 1 并赋值给变量。

      var visitNumber = parseInt("1") + 1;
      
      console.log(visitNumber);

      【讨论】:

        猜你喜欢
        • 2010-12-09
        • 2013-03-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多