为什么布尔值本质上是单例的[JavaScript]
最后一条语句返回true,这意味着bool1和bool2指向同一个对象实例,我想了解为什么会出现这种情况?为什么布尔值本质上是单例的[JavaScript],javascript,Javascript,最后一条语句返回true,这意味着bool1和bool2指向同一个对象实例,我想了解为什么会出现这种情况?boolean是数据类型,而不是对象。首先检查类型是否相同,然后检查值是否相同 如果两个布尔操作数都是true或都是false,则两个布尔操作数严格相等 如果以的对象实例为例 Boolean对象是布尔值的对象包装器 您将得到严格相等的false var bool1=新布尔值(false), bool2=新布尔值(false); console.log(bool1==bool2)布尔值是数据
boolean
是数据类型,而不是对象。首先检查类型是否相同,然后检查值是否相同
如果两个布尔操作数都是true
或都是false
,则两个布尔操作数严格相等
如果以的对象实例为例
Boolean
对象是布尔值的对象包装器
您将得到严格相等的false
var bool1=新布尔值(false),
bool2=新布尔值(false);
console.log(bool1==bool2)代码>布尔值
是数据类型,而不是对象。首先检查类型是否相同,然后检查值是否相同
如果两个布尔操作数都是true
或都是false
,则两个布尔操作数严格相等
如果以的对象实例为例
Boolean
对象是布尔值的对象包装器
您将得到严格相等的false
var bool1=新布尔值(false),
bool2=新布尔值(false);
console.log(bool1==bool2)代码>三重相等(==)匹配值和类型。由于两者都是基元类型,因此返回true
如果bool1和bool2是同一个实例对象,那么更改一个值将更改另一个值,但当您更改bool1或bool时,它肯定不会更改其他值。三重相等(==)匹配值和类型。由于两者都是基元类型,因此返回true
如果bool1和bool2是同一个实例对象,那么更改一个值将更改另一个值,但当您更改bool1或bool时,它肯定不会更改其他值
var bool1 = false
var bool2 = false
bool1 === bool2