js:数据类型转换

在这里插入图片描述
相等比较时的强制转换:
如果有数字,则会转换为数字进行比较;
在进行比较之前,布尔值会转换为数字0和1;
如果没有数字,有字符串则会转换为字符串;对象类型会调用valueOf转换为基本数据类型进行比较;
两个对象类型比较则会比较地址;
null和undefined在参与比较时不会进行类型转换。
特殊地,null=undefined,NaN与任何数据进行比较都不相等。

number函数进行数据类型转换与parseInt不同的是:

  1. parseInt只对字符串类型进行转换,number可以对任何类型进行转换。
  2. number:布尔值转换为01,数字转换为数字,null转换为0,undefined转换为NaN,字符串只包含数字(前面可以有正负号)则转换为数字,字符串有小数点则转换为浮点数,字符串是十六进制格式(0x开头)转换为十进制数字,空字符串转换为0,其他字符串转换为NaN。如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值。如果转换的结果是NaN,则调用对象的toString()方法,然后再次依照前面的规则转换返回的字符串值。
  3. parseInt:忽略字符串前面的空格,直至找到第一个非空格字符。如果第一个字符不是数字字符会转换为NaN,如果第一个字符是数字字符则会转换直到非数字字符。还可以指定字符串的进制。
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值