JavaScript中的简单条件
输出:JavaScript中的简单条件,javascript,Javascript,输出: if(rule["a:Value"]["0"]._ !== this.state[propertyName].length){ rett[propertyName] = ""+this.state[propertyName].length rett[propertyName] += rule["a:Value"]["0"]._ rett[propertyName] += "true" return true; }else{ rett[propertyName]
if(rule["a:Value"]["0"]._ !== this.state[propertyName].length){
rett[propertyName] = ""+this.state[propertyName].length
rett[propertyName] += rule["a:Value"]["0"]._
rett[propertyName] += "true"
return true;
}else{
rett[propertyName] = "false"
return false;
}
First number=我的条件中的第一个参数
第二个数字=我的状态下的第二个参数
两者都是0。那么为什么我的条件会转到不应该等于..的分支 解决了!感谢费德里科·克莱兹·库洛卡
SubsystemID: "00true"
规则[“a:Value”][“0”]是实际数字还是字符串?因为你在严格比较…请构建一个@FedericoklezCulloca可能是字符串,这就是问题所在。如何改进我的代码?@Bobek了解一下规则[“a:Value”][“0”]。\uz
有助于了解如何解决此问题。或者,您可以在比较之前将其转换为整数。。。
if(parseInt(rule["a:Value"]["0"]._) !== (this.state[propertyName].length)){
rett[propertyName] = ""+this.state[propertyName].length
rett[propertyName] += rule["a:Value"]["0"]._
rett[propertyName] += "true"
return true;
}
else{
rett[propertyName] = "false"
return false;
}