【问题标题】:And Or stacking conditions in Javascript (if $1 && ($2 || $3))And Or 在 Javascript 中堆叠条件(如果 $1 && ($2 || $3))
【发布时间】:2010-10-14 19:40:48
【问题描述】:

例如。有 3 个变量,1 是必须的,2 和 3 是两者之一,所以只要 1 和 2 为真,则 3 可以为假,只要 1 和 3 为真,则 2 可以为假。

if(xmlhttp.responseText.indexOf("type:SearchList~")>=0 && (obj == "hDrop" || obj == "iDrop")){
}

不适合我

谁能发现问题?

【问题讨论】:

  • “如何”它不起作用?愿意详细解释您遇到的错误吗?

标签: javascript conditional


【解决方案1】:

我可以发现你的脚本没有问题。这个非常简单的测试验证了它:

var a = "yes";
var b = "no2";
var c = true;
alert(c && (a == "yes" || b == 'no'));

检查'obj'的值。是字符串吗?

【讨论】:

  • 呃发现我之前已经用 dom 替换替换了我的变量,该替换不再包含我需要的字符串。现在一切都解决了:D欢呼
【解决方案2】:

我为你的条件建立了一个真值表:

1 2 3 R
-------
0 X X 0
1 0 0 0
1 1 X 1
1 X 1 1

这会解析为 1 && (2 || 3),所以还有其他问题。

【讨论】:

    【解决方案3】:

    您的代码编写正确,但您比较的数据可能存在错误,因此请跟踪数据,然后检查它是否正确执行条件 您可以使用 alert(data) 进行跟踪;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-04
      • 2013-11-09
      • 2019-03-19
      • 2021-05-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多