可以't在if中检查一个变量
Can't check one variable in if
我有一个问题。这是代码:
var z = "+"
if (z!="+" || z!="-" || z!="*" || z!="/" || z!="%") document.write("You must give me operator (+ - * / %)");
else
document.write("Yess!");
输出是:您必须给我运算符(+-*/%)
为什么它不能正常工作?感谢您的帮助。:)
您不应该执行OR,而应该执行AND:
var z = "+"
if (z!="+" && z!="-" && z!="*" && z!="/" && z!="%") document.write("You must give me operator (+ - * / %)");
else
document.write("Yess!");
您最好这样检查。
var z = "+";
document.write('+-*/%'.indexOf(z) !== -1 ? "Yess!" : "You must give me operator (+ - * / %)");
您应该使用"AND"而不是"OR",因为使用"OR"时,您的任何一个条件为true都将使整个条件为true,并且由于z != "-"
,这足以使您进入if
的true分支。
var z = "+";
if (z != "+" && z != "-" && z != "*" && z != "/" && z != "%") {
document.write("You must give me operator (+ - * / %)");
} else {
document.write("Yess!");
}
分解逻辑
如果z必须等于"+",而z不能等于"+"||"-"||"*"||"/"||"%,则z必须为true。
这是真的,因为在使用OR时,每个逻辑比较都不以任何其他比较为条件。如果满足任何逻辑比较,例如z不等于"/",则此语句必须为真,因为z="+"且不等于"+"。
*这就是为什么你必须在逻辑语句中使用AND来实现你想要的结果。
相关文章:
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 导航到特定事件的另一个变量页面
- 在另一个函数中使用变量this
- 我可以在Javascript/jQuery中使用一个变量作为键吗
- 使用mongodb更新中的一个变量
- 为什么window.open不打开一个以变量形式给出的链接
- 将节点数据分配给另一个变量jstree
- 如何将变量传递到另一个js文件
- 我怎么能让流星简单模式中的一个字段等于一个js变量,并且仍然让用户填写简单模式的其余部分
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- 将会话变量从一个页面传递到另一个页面
- Javascript:在激发函数后返回一个变量以供使用
- 替换另一个变量对象中的变量值
- 什么'它的意思是当一个变量位于括号外时
- 这在JavaScript中是一个好的变量名吗
- 可以't将sessionStorage设置为Javascript中的一个变量
- 如何在javascript中给变量一个随机值
- 在不同的.js文件之间传递变量;一个是在iframe内
- Console.log(变量);VS console.log([变量]);/一个提供信息,另一个没有
- 是否可以给变量一个默认值