判断规则:一个等号是赋值操作==先转换类型再比较,===先判断类型如果不是同一类型直接为false。
$a = 1;表示把1赋值给变量啊
1、两个的数据类型必须一样;
2、两个数据的值必须一樣;
3、两个都不能是NaN;
4、两个都不能是对象(除非两个都是null);
=为赋值语句 这个无需多说 主要是== 和===
他们都是为都是判断是否相等
1.对于基础类型來说他们是有区别的 首先同一类型的是一样的,不同类型之间 == 会进行类型转换成同类型再进行值判定 而===则类型不同直接false
2.对于Array,Object等高级类型==和===是没有区别的,都是进行“指针地址”比较
3.基础类型和高级类型之间 也是有区别的 ==会把高级->基础进行值比较 而===也是看先看类型
应用场景嘚话无非就是说如果你需要判定数据在类型转换前是否相等 那就用===
=是赋值,这个无需赘述
==和===都是比较相等的运算符只不过一个是不严格嘚,一个是严格的
==是只要值相等无论类型是否一致,都返回true
===是全部相等值,类型都必须相等才返回true
总之这两个的关系就像java的 equals 和 == 的区別 ,一个是判断值是否相等一个是判断堆栈内存地址是否相等