【问题标题】:ReferenceError: Invalid left-hand side in assignment using ORReferenceError:使用 OR 分配的左侧无效
【发布时间】:2015-06-15 08:08:14
【问题描述】:
data['username'] = $("#username").val() || validated = false;

if(validated){
//save to db
}

我想编写更短的代码,如果用户名为空,则将验证分配为 false。但是为什么它不适用于上面的代码呢?

【问题讨论】:

    标签: jquery angularjs


    【解决方案1】:

    || 的绑定比= 强(参见https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Operators/Operator_Precedence

    所以您需要将(valided = false) 放在括号内。

    否则它首先评估为例如('' || undefined) 然后尝试将 false 分配给此表达式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-07
      • 1970-01-01
      • 2018-10-02
      • 2017-01-08
      • 1970-01-01
      • 2018-06-10
      • 2016-08-16
      相关资源
      最近更新 更多