js中的true和false
2018-04-05 本文已影响432人
稻草人_b788
一、js中的true和false
在js中0,false以及空对象null,空数组[],空字符串""等代表false;而非0数字,true以及非空对象以及有内容的数组和字符串代表true
在ruby中空对象使用nil表示,而不是用null
例如:
<script>
if([]){
alert("空数组")}
else
{
alert("非空数组")}
</script>
由于[]为false,因此输出结果为"非空数组"
<script>
var a=0
if(null){
alert("空对象")
}
else
{alert("非空对象")
}
</script>
由于null代表false,因此输出结果为"空对象"
<script>
var a=0
if(a){
alert("空对象")
}
else
{alert("非空对象")
}
</script>
由于0代表false,因此输出结果为"空对象"
<script>
var a=0
if(a=1){
alert("空对象")
}
else
{alert("非空对象")
}
</script>
a的初始值是0,但执行到if语句时,括号拥有最高优先级,因此a被重新赋值为1,那么a就代表了true,因此输出的结果是"非空对象"