JS中的基本数据类型分为五类:
- 字符型(string)
- 数值型(number)
- 布尔型(Boolean)
- undefined(未定义值)
- null(空值)
当我们不能确定数据类型时,可以用typeof来判断数据类型。
数据类型的转换有两种方法:1、强制转换。2、隐式转换。
强制转换
主动将数据的类型强制转换为某种类型。
- 强制转换字符串
String(数据) 强制转换为字符串。
数据.toString(进制) 强制转换为字符串 null和undefined是不能转换 的。toString可以将任何数字转换为任意进制,进制必须大于等于2并且小于等于36。也就是最小是2进制,最大是36进制,因为数字字母就36个。
toFixed(小数点后几位) 将数值转换为字符串,并且按照小数点四舍五入保留位数 。 - 强转数值
Number(数据)
NaN 非数值 类型是number
纯字符—》 NaN
纯数字—》数字
部分数字,部分字符—》NaN
布尔值—》数字 true—>1 false—>0
undefined—>NaN
null—>0
强转为整数 :
parseInt(字符,进制) 可以将指定进制方式字符串转换为10进制数值,是toString()逆转换
纯字符—》 NaN
纯数字—》数字
部分数字,部分字符—》 通过parseInt转换数值可以从开始转换到字符前为止变成数值,如果第一位是字符,返回NaN
布尔值强转数值整型,会变成NaN
undefined—>NaN
null—>NaN
强转为小数:
parseFloat(); 强转小数和parseInt类似,只不过可以保留小数位 - 转换为布尔值
Boolean(数据) 转换为布尔值
“” 0 false,undefined,null,NaN 转换为布尔值都会变成false,除此之外转换都是true
隐式转换
当数据类型不相同时,做数据的运算,就会自动将两端的数据转换为相同类型然后运算,这是隐式转换。
隐式转换遵从与 String() Number() Boolean()。
、