javascript的布尔值只有两个值,保留字true和false。
任意javascript的值都可以转换为布尔值。下面这些值会转换成false:
undefined null 0 -0 NaN "" //空字符串
所有其他值,包括所有对象(数组)都会转换成true。
来看一个例子,假设变量o是一个对象或是null,可以通过一条if语句来显式地检测o是否是非null值:
if(o !== null) ...
不等操作符“!==”将o和null比较,并得出结果为true或false。另:
if(o) ....
对于第一种情况,只有当o不是null时才会执行if后的代码,第二种情况的限制没那么严格:只有o不是false或任何假值(比如null 或 undefined)时它才会执行这个if。到底选用哪条语句取决于期望赋给o的值是什么。如果需要将null与o或“”区分开来,则需要使用一个显式的比较。
时间: 2024-10-11 07:32:41