在写JS的时候,发现框架中有用到 == 和 === ,在Java里面是没有===的用法的,所以查询了资料了解一下。
区别
因为JS是弱类型的语言,所以存在变量的类型是可以隐性转换的。在使用==进行比较的时候,JS会把两个变量改成同一个类型进行比较,例如:
var a = '1'
var b = 1
console.log(a == b)
可以看到a和b是不同类型的,JS会隐性的转成同一个类型,所以最后比较的结果就是true。
而使用===进行比较的时候,这个是强类型比较,JS不会进行隐性转换。所以最后比较的结果就是false。