==与===的区别

JS中的 == (模糊等 )与 === (绝对等 )

  • 概念:
  1. “ == ”和“ === ”,都是判断运算符。
  2. “==”模糊等,意思就是在做运算判断时,只需其值相等即可,因为在运算之前会进行一个隐式转换,可以将等式两边的数值转换成相同类型,然后再进行判断。
  3. “===”绝对等,意思就是在做运算判断时,等式两边的数值以及数据类型都必须相同。
  • Demo:

1. 两边数值都为数值型时:

 

2. 两边同为字符串时:

3. 两边同时为布尔型时:

4. 两边同时为 null 以及undefined 时:

 

 

 

 

以上这些情况 == 和 === 没有任何区别

1. “==”两边为不同类型时:

2. “===”两边为不同类型时:

 

 

当两边类型不同时,就很容易发现 == 和 === 的不同之处

  • 区别:

在比较类型相同的数据时,== 与 === 之间没有任何区别,完全一样

在比较不同类型的数据时,== 相等运算符会将数据先进行类型转换,然后再进行比较。=== 严格等不会转换数据类型,直接进行比较。

在比较时,结果为真即为 true ,结果为假即为 false。

 

类型转换规则

1. 如果等号两边是boolean、string、number三者中任意两者进行比较时,优先转换为数字进行比较。

2. 如果等号两边出现了null或undefined,null和undefined除了和自己相等,就彼此相等

 

最后一点,NaN无论在什么时候都不会等于自己本身,判断是不NaN 只能使用isNaN()。

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值