定义:JavaScript 中,变量是可以赋予任何类型的值。但是运算符对数据类型是有要求的,如果运算符发现,运算子的类型与预期不符,就会自动转换数据的类型。当然数据类型除了可以自动转换以外,也可以手动强制转换。
一、String(); 强制转换为字符串
可将其它类型转为字符串类型,但对null和undefined不适用。
toString可以将任何数字转换为任意进制,进制必须大于等于2并且小于等于36,也就是最小是2进制,最大是36进制,因为数字字母就36个
二、boolean();强制转换为布尔值
布尔值分为两种flase和true
“” 0 false,undefined,null,NaN 转换为布尔值都会变成false,除此之外转换都是true
三、强制转换为数值
①强转为整数
parseInt(字符,进制) 可以将指定进制方式字符串转换为10进制数值,是toString()逆转换
纯字符—》 NaN
纯数字—》数字
部分数字,部分字符—》 通过parseInt转换数值可以从开始转换到字符前为止变成数值,如果第一位是字符,返回NaN
布尔值强转数值整型,会变成NaN
undefined—>NaN
null—>NaN
② 强转为小数
parseFloat(); 强转小数和parseInt类似,只不过可以保留小数位
四、隐式转换
当数据类型不相同时,做数据的运算,就会自动将两端的数据转换为相同类型然后运算,这是隐式转换
隐式转换遵从与 String() Number() Boolean()