没有运算符的JavaScript If语句条件?它有什么作用?
我习惯于 if 语句的条件为 ( x < y ) 或 ( x == y ).但是在没有运算符的情况下,if 语句究竟检查了什么?即在下面的示例中 if (window.XMLHttpRequest)... 条件是什么?
I am used to if statements having a condition where ( x < y ) or ( x == y ). But in cases where there is no operator, what does the if statement check exactly? i.e. in the example below if (window.XMLHttpRequest)... what's the condition?
谢谢.
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
推荐答案
只要括号内的表达式返回的不是false
, null
, 0
, ""
或 undefined
... if
语句中的块将被执行:-)
As long as the expression inside the parentheses returns something other than false
, null
, 0
, ""
or undefined
... the block in the if
statement will be executed :-)
事实上,以下所有方法都可以:
<script>
if (3) {
alert('3');
}
if ({}) {
alert('{}');
}
if(window) {
alert('window!');
}
if(true) {
alert('true!');
}
if('hell yeah') {
alert('hell yeah!');
}
</script>
相关文章