1.和=都是用来进行是否相等的比较,两者的差别主要是是否进行数据类型的转化。==
仅当左右操作数相等时返回true,如果两个操作数不是同一类型时,js会尝试将其转化为合适的类型,然后进行比较。 === 当且仅当左右操作数类型相等,且值相等时,才会返回true,当左右两个操作数不是同一类型时,js不会转换其类型
2.具体用途:
判断两个值是否=相等:
1、如果类型不同,就[不相等]
2、如果两个都是数值,并且是同一个值,那么[相等];
3、如果两个都是字符串,每个位置的字符都一样,那么[相等];否则[不相等]。
4、如果两个值都是true,或者都是false,那么[相等]。
5、如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]。
6、如果两个值都是null,或者都是undefined,那么[相等]。
判断两个值是否相等:
如果两个值类型不同,他们可能相等
1、如果一个是null、一个是undefined,那么[相等]。
2、如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。
3、如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。
4、如果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。 js核心内置类,会尝试valueOf先于toString;例外的是Date,Date利用的是toString转换。
Something about js中==和===的区别
最新推荐文章于 2026-08-10 11:36:58 发布
本文详细解析了JavaScript中==与===运算符的区别,重点介绍了它们在数据类型转换和值比较上的不同行为,以及在实际编程中的具体应用。

397

被折叠的 条评论
为什么被折叠?



