2014-10-31 50 views
0

在下面的JavaScript代码,为什么在比较变量和两个真实语句时JavaScript返回false?

var a = 5; 
console.log(5 <= a >= 6); 

假被打印到控制台。 但是,对于陈述5 < = a和a> = 6,打印为true。这与双重比较有关吗?

谢谢!

+0

'a> = 6'为'false'。 – Andy 2014-10-31 11:55:35

+0

我认为问题在于你理解两个比较实际上是什么......((5 <= a) > = 6)' – musefan 2014-10-31 11:57:37

+0

取决于你使用的操作符的优先级和相关性。 – 2014-10-31 12:00:49

回答

4

当你测试,如果5小于或等于5当你测试,如果true大于或等于6false

true

(您也会如果得到false你测试以确定5是否大于或等于6

如果要使用相同的值执行多个测试,编辑实际测试该值多次。

例如

if (5 <= 6 && 5 <= 6) 

if (5 <= 6 || 5 >= 6) 
2

当你写这样的东西,你似乎是检测是否:

(5 <= a) >= 6 

"5 <= a"计算结果为真,但声明"true >= 6"评估为false

相关问题