JavaScript If语句条件没有运算符?它有什么作用?

17 javascript conditional if-statement

我习惯于if语句的条件为(x <y)或(x == y).但是在没有运算符的情况下,if语句究竟检查了什么?即在下面的例子中if(window.XMLHttpRequest)......条件是什么?

谢谢.

if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
Run Code Online (Sandbox Code Playgroud)

dki*_*zer 16

只要括号内的表达式返回比其他东西false,null,0,""undefined...在该块if语句会被执行:-)

事实上,以下所有方法都有效:

<script>
  if (3) {
    alert('3');
  }
  if ({}) {
    alert('{}');
  }
  if(window) {
    alert('window!');
  }
  if(true) {
    alert('true!');
  }
  if('hell yeah') {
    alert('hell yeah!');
  }

</script>
Run Code Online (Sandbox Code Playgroud)