js '=='的隐性类型转换规则

1、如果类型相同,无须转换

2、如果其中一个操作值是null或undefined,,则另一个操作值必须是null或undefined才会返回true,否则返回false

3、如果其中一个操作值是Symbol 则返回false

4、如果操作值为string或number,则将string转为number再比较

5、如果一个操作值是boolean则转换为number再比较

6、如果一个操作值是object,另一个操作值是string number或symbol,,则会把object转原始类型(先调用valueOf方法若返回值还不是原始类型则再调用toString方法)

 

posted @ 2025-12-25 13:31  howhy  阅读(3)  评论(0)    收藏  举报