数据类型的转换,不会的小伙伴看过来

为什么要数据转换?

编写程序时过度依靠系统内部的隐式转换是不严禁的,因为隐式转换规律并不清晰,大多是靠经验总结的规律。 为了避免因隐式转换带来的问题,通常根逻辑需要对数据进行显示转换。

通俗来讲就是 , 因为数据类型不一样, 得不到自己预想的数据.

1. 隐式转换

隐式转换 : 当运算符两边的 ‘数据类型不一致’ 的时候,编译器会转成一致后运算

(1)转换数字 : 算术运算符 + - * / %

(2)转换字符串 : 连接符+ (+号两边只要有一边是字符串,此时+就是连接符)

(3)转换布尔: 逻辑非 !

2. 显式转换

2.1 其他类型转number

 字符串转number

转整数: parseInt(数据)

转小数: parseFloat(数据)
 

非字符串类型转number(

console.log(Number(true))

console.log(Number(false))

console.log(Number(undefined))

console.log(Number(null))

2.2其他类型转string

  • 1 String(数据)      2  变量名.toString()

2.3 其他类型转boolean

 1.false: 有7种数据会得到false

            0  -0  NaN undefined  null  ''  false           

 2.true:  除false 7种之外的一切数据

        console.log( Boolean(0) )//false
        console.log( Boolean(-0) )//false
        console.log( Boolean(NaN) )//false
        console.log( Boolean(undefined) )//false
        console.log( Boolean(null) )//false
        console.log( Boolean('') )//false
        console.log( Boolean(false) )//false

 ***number类型特殊值NaN

 1. NaN : number类型的特殊值

       /not a number : 不是一个数字。 如果你的数学运算得不到一个数字,则会得到NaN

       NaN含义 : 表示的是错误的运算,出现NaN一般就是代码有bug

 2. NaN不能参与任何运算,结果一律是NaN

        console.log( NaN + 1)// NaN

        console.log( NaN * 0 )// NaN

***undefined与null区别 

        1. undefined : 未定义。 变量有声明,未赋值,此时变量的默认值就是undefined

            * 说人话 : undefined就像期房 : 买了房,但是房子还没有建 (没有值)

        2. null : 空值。 变量有赋值,值为空

            * 说人话 : null就像毛坯房 : 买了房,房子有建,但是里面是空的 (有值,只不过是空值)

        undefined和null共同点 :  值相等, 转布尔类型都是false

        console.log( undefined == null )//true

        console.log( Boolean(undefined) )//false

        console.log( Boolean(null) )//false

undefined和null不同点 : 数据类型不同, 转number类型值不同

        console.log( undefined === null )//false

        console.log( Number(undefined) )//NaN

        console.log( Number(null) )//0

你学会了吗????

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值