javascript 中==与===

mac2022-06-30  69

1.==相等运算符

1.1如果操作数具有相同的类型,则判断其等同性,如果两个数的值相等,则返回true(相等),否则返回 false (不相等)

1.2如果两个操作数类型不同,则按如下规则:

null与undefined相等其中一个是数字,另一个是字符串,则将字符串转为数字,在做比较其中一个是true,先转化成1(false则转化为0) 在做比较如果一个值是对象,另一个是数字或字符串,则将对象转化为原始值(通过toString()或valueOf()方法)其他情况则直接返回false

2.===等同运算符

2.1如果操作数类型不同,则不进行值得判断,直接返回false

2.2如果操作数类型相同则按如下规则:

都是数字时,如果值相同则两者等同(例外:NaN与其本身不相等),否则不等同都是字符串,如果串的值相等则等同,否则不等同都是布尔值,且其值均为true/false,则等同,否则不等同如果两个操作数引用同一对象,则两者完全等同,否则不等同如果两个操作数均为null/undefined 则等同,否则不等同

 

转载于:https://www.cnblogs.com/duduSunny/p/4129070.html

最新回复(0)