在JavaScript中,使用“==”在进行比较的时候,如果左右两边的数据类型不一样,则先转换为相同的类型,再进行比较
方法/步骤
1、对象==对象:不一定相等对象比较时,使用对象的地址进行比较,如果地址一样则相同,否则不相同因为对象操作的是引用地址,地址不相同则不相等
2、两个对象,分别属于不同的堆空间,地址不一样
3、两个如下对象,如果地址相同,则相同
4、大部分都是先转换为数字,在进行比较对象==数字佼沣族昀:把对象转换为数字对象==布尔:把对象转换为数字,把布尔也转换为数字对象==字符串:把对象转换为数字,挹掷秦把把字符串也转换为数字字符串==数字:字符串转换为数字字符串==布尔:都转换为数字布尔==数字:把布尔转换为数字
5、特殊情况null==undefined:truenull===undefined:falsenull&&undefined和其它值都不相等NaN==NaN:false,NaN和谁都不相等包括自己
6、特殊情况:![]转换为bool为false[]屏顿幂垂==true:false,都转换为数字0==1![]==true:熠硒勘唏false,先算![],把数组转换为布尔取反=>false=>false==true[]==false:true,都转换为数字0==0![]==false:true,先算![],把数组转换为布尔取反=>false=>false==false
7、举例:一边是数字,一边是字符串,会先尝试把字符串转换为整数,然后进行比较代码
8、效果:先把字符串b转换为数字,然后进行比较