来自于:http://bbs.blueidea.com/thread-2983198-1-1.html

 

<SCRIPT LANGUAGE="JavaScript">
var a = 0;
var b = -1;
var c = 1;
function assert (aVar) {
if (aVar==true)     alert(true);
else     alert(false);
}
assert(a) ;
assert(b) ;
assert(c) ;
</SCRIPT> 
<SCRIPT LANGUAGE="JavaScript">
 
var a = 0;
var b = -1;
var c = 1;
function assert (aVar) {
if (aVar)     alert(true);
else     alert(false);
}
assert(a) ;
assert(b) ;
assert(c) ;
</SCRIPT> 

这里非0数值的布尔值的确都是true,也就是说所有的问题都集中在2==true中的==运算符上。基本可以确定,==一定不是把数字转换为布尔值再进行比较。

 

<SCRIPT LANGUAGE="JavaScript">
var a = "undefined";
var b = "false";
var c = "";
function assert (aVar) {
if (aVar)     alert(true);
else     alert(false);
}
assert(a);
assert(b);
assert(c);
</SCRIPT>


相关文章:

  • 2021-08-18
  • 2022-02-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-31
猜你喜欢
  • 2021-09-16
  • 2022-12-23
  • 2021-05-02
  • 2021-08-24
  • 2021-07-26
  • 2021-06-04
相关资源
相似解决方案