javascript中有一个叫恒等运算符,那么这个运算符是什么意思呢?他到底和等于又有什么区别呢?
下面就是恒等和等于的定义:
恒等 === : 左右两边必须完全相等(值、类型都相等)才为true
等于 == :在执行比较前,会尝试对两边进行类型转化,然后才比较。
由此可以看出,如果同样一个值,属于同一属于不同类型时使用恒等和等于的结果是完全不同的
下面有一段代码能很好的反应这个现象:
var a=8; var b="8"; a==b; //true a===b; //false
当然,除了横等意外还有不恒等概念与恒等一样
不恒等 !== : 左右两边必须完全不相等(值、类型都相等)才为true
不等于 != :在执行比较前,会尝试对两边进行类型转化,然后才比较。
var a=8; var b="8"; a!=b; //false a!==b; //true