关于javascript恶心的==和===

感觉和java的==和equals有的一拼,啧。

先定义几个公式,数学公式嘛,背就好了。

0==false
false==''

undefined==null

几个特殊的

[]==[] //false

在这里插入图片描述


NaN==NaN//false
NaN===NaN//false
//逻辑是这样的,NaN是Not a number,既然不是数值,那么两个比较凭什么要让他们相等?

一些意想不到的

undefined==undefined//true
''==''//true
false==false//true
0==0//true

//null好特殊
null==null//true

脑筋急转弯

[] == ![]

1.!运算符优先级高于赋值,赋值是倒数第二位。!会强制转化为布尔值,
[]->bool->true;![]->false;
2.变成[]==false
3.==还是遵循转化为字符串,所以[]=>’’,
空串和false相等,所以,true;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值