js中数据类型的转换

js中数据类型的转换

基本数据类型

把其他数据类型转换为number类型

  • isNaN、Number、parseInt、parseFloat
  • 在进行加减乘除数学运算的时候
true -> 1  false -> 0
'' -> 0
'1' -> 1
'12px' -> true/12/NaN
null -> 0
undefined -> NaN

{} /^$/ function(){} -> NaN
[] -> 0
[12,23] -> NaN
//=> 通过toStirng把数组转换为字符串<br>
// 然后Number把字符串转换为数字

js中的数学运算

  • +、-、*、/ 加减乘除
  • 除了加法运算有特殊性,其余的运算符都是数学运算,也就是遇到非数字类型,先转换为
    number类型,再进行计算
1-'1' -> 0
10 * null -> 0
10 / undefined -> NaN
10 * [10] -> 100
  • 加法的特殊性: 在遇到字符串的时候,+是字符串拼接,不遇到字符串就是数学运算
1+'1' -> '11'
null+'1' -> 'null1'
//=>把其他值先转换为字符串再进行拼接
对象.toString() -> '[object object]'

image

思考

1+null+true+undefined+[]+'xieth'+null+undefined+[]+10

结果

"NaNxiethnullundefined10"

Number(undefined) -> NaN
//Number在进行转换的时候,只要包含非有效数字,返回都为NaN

将其他类型转换为布尔类型

  • Boolean、!、!!
  • 在条件判断的时候,也是转换为布尔类型,然后验证条件的真假

只有 0 NaN null undefined 空字符串 -> 转换为false
其余都为true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值