在JavaScript中,对于变量可以存储的数据可以分为基本数据类型【包括布尔类型 , 数值类型 , 字符串类型 , undefined , null】和复杂数据类型【数组 , 对象 , 函数】。
那什么是数据类型的转化,为什么要有数据类型的转化呢?在Javascript程序执行的过程中,往往需要变量中存储的数值是某种特定的数据类型,此时就需要进行数据类型的转化,也就是将当前的数据类型转化为其他数据类型。
JavaScript中数据类型的转化又分为自动转化和强制转化,顾名思义,自动转化是计算机程序自动完成的转化;强制转化是人为强行完成的转化。
今天说一说基本数据类型的转化。
一:自动转化
-
其他数据类型自动转化为布尔类型
注意:数值0与数值0.00都视同为0,得到的也是false。
注意有无空格的区别。
总结:在其他数据类型自动转化为布尔类型,只有0,’’ ,undefined,null,NaN 这五个会转化为false,其他都转化为true。 -
其他数据类型自动转化为字符串类型
总结一下转化原则:
布尔值 true —> 字符串 ‘true’
布尔值 false —> 字符串 ‘fasle’
undefined —> 字符串 ‘undefined’
unll —> 字符串 ‘null’
数值 —> 将数值解析转化为对应的纯数字的字符串【包括科学技术法的需要解析出相应的数值在转化为字符串】
数组 —> 将 [] 中的内容,转化为字符串的形式
对象 —> 任何对象,任何内容都会转化为 [object Object] 固定的内容形式
函数 —> 将所有的程序代码转化为字符串 -
其他数据类型自动转化为数值类型。
二:强制转化 -
强制转化为布尔类型,语法Boolean(数据/变量);输入的结果只有true 或者false
总结:0 , ‘’ , undefined , null , NaN,这五个自动转化布尔类型都是false,其他转化为布尔类型的都是true。
注意:使用 Boolean() 方法转化变量中存储的数值类型,但是不会改变变量中存储的数值。
2.强制转化为字符串类型
语法1:变量.toString() 括号里面是进制类型,括号里面不写默认是十进制,通常用于将数值强制转化为字符串型,并可以设置转化的进制,进制范围是2-36进制。
语法2:String(变量/数据)
3.强制转化为数值类型。
语法1:Number(变量/数值) 将其他类型强制转化为数值类型
语法2:parseInt(变量 / 数据) 可理解为从数据的左侧起解析获取整数内容。
语法3:parseFloat(变量/数值) 获取浮点部分,包括整数和小数。