js中不同类型作比较的规律(布尔运算)

不同类型间的比较,规律如下

类型

类型

规律

其它说明

对象

对象

比较是不是同一个内存地址

 

对象

字符串

对象先转化为字符串,然后做比较

 

对象

布尔类型

两边都要先转为数字(false是0,true是1)。是对象类型先隐式调用toString方法,然后再Number()

 alert([]==false);

alert([]==0)

alert([1]==1);

alert([1]==true)

alert([2]==true)

对象

数字

对象要转为数字,再进行比较(对象先隐式调用toString方法转化为字符串,然后再把这个字符串轮化为数字,相当于把这个字符串放到Number这个方法中)

 

数字

布尔

是进行的数字的比较

 

数字

字符串

把字符串转化为数,再比较

 

布尔

 

把两边都要转化为数字再进行比较

 

null

undefined

true

 

null,undefined

和其它类型

null和undefined和其它类型比较都是false(这两个对象没toString方法)

 alert(null==false)

alert(null==0)

alert(null=="");;

自身做布尔运算的时候的转换

类型

规律

示例

object

都是true 

 alert(!![])

number

只是0和NaN是false

 alert(!!0);

string

只有空字符串是false(不是空格字符串)

 alert(!!"");

function

都是ture

 

null,undefined

都是false

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值