在下面的JavaScript代码,为什么在比较变量和两个真实语句时JavaScript返回false?
var a = 5;
console.log(5 <= a >= 6);
假被打印到控制台。 但是,对于陈述5 < = a和a> = 6,打印为true。这与双重比较有关吗?
谢谢!
在下面的JavaScript代码,为什么在比较变量和两个真实语句时JavaScript返回false?
var a = 5;
console.log(5 <= a >= 6);
假被打印到控制台。 但是,对于陈述5 < = a和a> = 6,打印为true。这与双重比较有关吗?
谢谢!
当你测试,如果5
小于或等于5
当你测试,如果true
大于或等于6
你false
你true
(您也会如果得到false
你测试以确定5
是否大于或等于6
)
如果要使用相同的值执行多个测试,编辑实际测试该值多次。
例如
if (5 <= 6 && 5 <= 6)
或
if (5 <= 6 || 5 >= 6)
当你写这样的东西,你似乎是检测是否:
(5 <= a) >= 6
"5 <= a"
计算结果为真,但声明"true >= 6"
评估为false
。
'a> = 6'为'false'。 – Andy 2014-10-31 11:55:35
我认为问题在于你理解两个比较实际上是什么......((5 <= a) > = 6)' – musefan 2014-10-31 11:57:37
取决于你使用的操作符的优先级和相关性。 – 2014-10-31 12:00:49