js中==和===的区别:
简单来说:==是【相等符】,===是【恒等符】
对于 string、number 等基础类型,== 和 === 是有区别的
- 不同类型间比较,== 会先将类型转化成同一类型,然后再比较"值" 是否相等,=== 如果类型不同,其结果就是false。
- 同类型比较,直接进行 "值" 比较,两者结果一样。
对于 Array,Object 等高级类型,== 和 === 是没有区别的
都是比较"内存地址"
例如:
alert("20"==20); //true 把"20"转换为数字,检查其是否相等。
alert("20"===20); //false 类型不同,直接返回false