<script>
function show(a){    
alert(2 < a < 3); 

show(1);
 </script>这个结果为什么是true?谁能详细解释解释

解决方案 »

  1.   

    2 < a < 3 => (2 < a) < 3
    由于2 < a 不是true就是false,当bool型与整型比较时,会转为整型,也就是true转为1,false转为0,
    0或者1都比3小,所以为true 
      

  2.   

    2 < 1 < 3; 2 < 1 = falsefalse < 3 = true“<”会将两边比较的数据转换成数组类型,false变为0 true变为1示例
    alert(2 < 1 < 1); // true 
    alert(2 < 3 < 1); // false//2 < 3 = true;
    //true < 1 -> 1 < 1 = false;