JavaScript中的字符"0"和false有什么区别呢?一起来学习下。
在JavaScript中,字符“0”等于false,因为“0”是字符串类型。当在if条件下测试相等时,JavaScript的自动类型转换生效,并将字符“0”转换为其数字值0,我们知道0代表值false;所以,字符“0”等于false。
示例:此示例说明了为什么字符“0”等于false。
<script> function Demo() { //输出"0"的类型 document.write(typeof "0" + "</br>"); // 如果"0"==false,即,false==false,返回true。 var result = ("0" == false); // 输出结果 document.write(result + "</br>"); // 将"0"转换并输出为其数值 document.write(Number("0") + "</br>"); // 将布尔值false转换并输出为其数值 document.write(Number(false) + "</br>"); // 因此,两个数值相同,因此条件“0”==false的计算结果为true。 document.write("0" == false); document.write("</br>"); // 或者可以这样 document.write(Number("0") == Number(false)); } Demo(); </script>
运行结果为:
string true 0 0 true true
因此,从上面的示例中可以清楚地看到,“0”等于“false”,并且这种行为背后的原因也很清楚了。当在if条件下测试相等时,它的计算结果就是“true”。
网友评论文明上网理性发言 已有0人参与
发表评论: