Javascript布尔类型

Javascript布尔类型,javascript,Javascript,可能重复: 为什么要执行代码块?b应该是布尔类型并且计算为false吗 请解释感谢除了null之外,所有对象都是真实的。因此,即使您专门编写newboolean(false),它仍然是真实的 这就是为什么您从不编写新的布尔值。要转换为布尔值,只需使用执行代码块,因为该对象存在且未定义,尽管它当前没有值。javascript中布尔对象的要点是将非布尔对象转换为“真”或“假”值 如果你有 if( b.valueOf() ); 这将计算对象的实际值。在实际javascript中永远不应使用新布尔值

可能重复:

为什么要执行代码块?b应该是布尔类型并且计算为false吗


请解释感谢

除了
null
之外,所有
对象都是真实的。因此,即使您专门编写
newboolean(false)
,它仍然是真实的


这就是为什么您从不编写新的布尔值。要转换为布尔值,只需使用

执行代码块,因为该对象存在且未定义,尽管它当前没有值。javascript中布尔对象的要点是将非布尔对象转换为“真”或“假”值

如果你有

if( b.valueOf() );

这将计算对象的实际值。

在实际javascript中永远不应使用新布尔值、新数字和新字符串。这有点像你不会在java中使用
==
来比较字符串,你不会在javascript中使用
新字符串
,因为
新字符串(“asd”)==新字符串(“asd”)//false
但是
新布尔值和新数字都是一样的
if( b.valueOf() );