原始值和数据类型的转换

JS的数据类型是可以相互转换的

一、toString()方法:能够把其他JS的数据类型转换成字符串;
例如:toString的类型转换上面的图片显示的是数字类型转换成字符串类型的,显示的结果为字符串类型的数字。

toString的类型转换
上面的图片是各种类型转换成字符串类型的,依次为:布尔类型转换成字符串类型、普通对象转换成字符串类型、数组对象转换成字符串类型、函数对象转换成字符串类型。

null、undefined数据类型不能使用toString函数变成字符串,这个要特别注意。

二、Boolean()函数:能够把其他JS数据类型转换成布尔值;

Boolean函数
只有 0、false、null、undefined、""、NaN,转换成布尔值都是false。
其他所有数据转换成布尔值都是true。

!(取反运算符):对布尔值取反,仅仅是对布尔值取反。
例如:
取反运算符
如果!后面跟的不是布尔值则将会进行隐式转换,步骤分为两步:
第一步:先把!后面的JS数据转换成布尔值;
第二步:再取反;
例如:
!0 --> !false --> true
!1 --> !true --> false

!!的作用和Boolean函数的作用是一样的 都是把JS的数据转换成布尔值
例如:
!!0 --> !true --> false

三、Number()函数:把其他类型数据转换成数字类型;
0 1 -1 1.0 0.5 NaN(not a number) 这些都是数字类型的

原始值转换成数字类型:字符串中只要含有非数字(除了数字 负号 和小数点之外的)在使用Number函数转成数字类型时都是NaN;

Number(’’) --> 0 (特例)
Number(’ ') --> 0 (特例,单引号里有空格)

布尔类型使用Number函数转换成数字类型
Number(true) --> 1
Number(false) --> 0

null类型使用Number函数转换成数字类型
Number(null) -> 0

undefined类型使用Number函数转换成数字类型
Number(undefined) -> NaN

引用值转换成数字类型:
引用值使用Number函数转换成数字类型有两步
1.先把引用值隐式转换成字符串
2.再把隐式转换好的字符串放到Number中
普通对象使用Number函数转换成数字类型
Number({}) --> Number("[object Object]") ====> NaN
数组对象使用Number函数转换成数字类型
Number([1]) --> Number(‘1’) ====> 1

Number([1,2,3]) --> Number(‘1,2,3’) ====> NaN (因为有逗号所以是NaN)

函数对象使用Number函数转换成数字类型
Number(function(){}) --> Number(‘function(){}’) =====> NaN

四、 isNaN函数
这个函数可以判断一个数字是不是NaN, 如果是 则结果true 反之 false。
如果用isNaN函数来判断其他JS的数据 则会分两步
1.先隐式转成数字
2.再把隐式转换好德1数字放到isNaN函数中

例如:
isNaN(true) --> isNaN(1) -->false

isNaN(function(){}) --> isNaN(NaN) --> true

isNaN([1,2]) --> isNaN(NaN) --> true

isNaN([1]) --> isNaN(1) --> false

isNaN(‘12.5px’) --> isNaN(NaN) --> true

isNaN(null) --> isNaN(0) --> false

isNaN(undefined) --> isNaN(NaN) --> true

五、parseInt()函数:从左向右提取数字,如果遇到数字之外(空格 小数点)的就会停止提取
例如:
parseInt()函数
六、 parseFloat函数:从左向右提取数字, 如果遇到数字和小数点之外(空格)的就会停止提取
例如:
 parseFloat函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值