【发布时间】:2015-06-15 08:08:14
【问题描述】:
data['username'] = $("#username").val() || validated = false;
if(validated){
//save to db
}
我想编写更短的代码,如果用户名为空,则将验证分配为 false。但是为什么它不适用于上面的代码呢?
【问题讨论】:
data['username'] = $("#username").val() || validated = false;
if(validated){
//save to db
}
我想编写更短的代码,如果用户名为空,则将验证分配为 false。但是为什么它不适用于上面的代码呢?
【问题讨论】:
|| 的绑定比= 强(参见https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)
所以您需要将(valided = false) 放在括号内。
否则它首先评估为例如('' || undefined) 然后尝试将 false 分配给此表达式。
【讨论】: