JS 里的数据类型转换
2019-03-31 本文已影响0人
swp小小喀嚓鱼
js中有7种数据类型,他们分别是:
①number 、②string、③boolean 、④symbol、⑤undefined、⑥null 、⑦object
其中1~6是简单数据类型,7是复杂数据类型
把任何数据类型转换成number
方法1:Number(any)
例:any是字符串"1",Number("1")//转换的结果是数字1
any是字符串"12a",Number("12a")//转换的结果是数字NaN
any是字符串"12a33",Number("12a33")//转换的结果是数字NaN
any是字符串"WWW",Number("WWW")//转换的结果是数字NaN
any是字符串"13.4",Number("13.4")//转换的结果是数字13.4
any是字符串"012",Number("012")//转换的结果是数字12
any是字符串"0x12",Number("0x12")//转换的结果是数字18
any是布尔值true,Number(true)//转换的结果是数字1
any是布尔值false,Number(undefine)//转换的结果是数字0
any是undefine值,Number(true)//转换的结果是数字NaN
any是null值,Number(null)//转换的结果是数字0
image.png
方法2:parseInt(any)
例:any是字符串"1.23",parseInt("1.23")//转换的结果是数字1
any是字符串"8a",parseInt("8a")//转换的结果是数字8
any是字符串"15e2",parseInt("15e2")//转换的结果是数字15
any是字符串"15px",parseInt("15px")//转换的结果是数字15
parseInt(0b11) //3
parseInt(011) //9
parseInt(11) //11
0x开头(16进制)、0b开头(二进制)、0开头且后面的数字没有8和9(视为八进制),不然就是默认的十进制
方法3:parseFloat(any)
例:any是字符串"1.23",parseFloat("1.23")//转换的结果是数字1.23
方法4:any-0
例:any是字符串"123","123"-0//转换的结果是数字123
方法5:+any
例:any是字符串"-1",+"-1"//转换的结果是数字-1
把任何数据类型转换成string
方法1:any.toString()
例:只有any是null和undefine的时候不是字符串,会报错,其他值都可以转换成功
any是object类型的时候,转换的是'[object Object]'
方法2:String(any)
String(null) //"null"
String(undefined) //"undefined"
不会像方法1一样,会报错
方法3:''+ any
同方法2的效果一样
把任何数据类型转换成boolean
方法1:Boolean(any)
any可以是任何值,得到的都是true,前提是下方的五个值不算在内
·0 、 NaN 、"、 null 、 undefined 、这个五个值得到的结果是false
方法2:!!any
!true //false
!!true //true
!!1 //true