Js数据类型
1.字符串 String
2.数值和非数值 Number
3.布尔值 Boolean
4.对象 Object
5.空值 Null
6. 未定义 Undefined
7.判断数据类型 typeof
隐式转换
当数据类型不相同时,做数据的运算,就会自动把两端的数据转换为相同类型然后进行计算。
强制转换
主动将数据的类型强制转换为某种类型
String();强制转换成字符串
var num=10;
var a=string(num);
console.log(typeof a);
但是null和undefined是不能转换的。
toString()可以将任何数字转换为任意进制,括号内表示需要转换的进制,进制须大于等于2并且小于等于36,最小是2进制,最大是36进制。
toFixed(小数点后几位) 将数值转换为字符串,并且按照小数点四舍五入保留位数
强转数值
使用Number()进行数值转换
NaN 为非数值 类型是number
var str="你好”;纯字符 NaN
var str="12”;纯数字 数字
var str="1a”;部分数字,部分字符 还是NaN
布尔值转换成数字,true是1,false是0.
undefined转换数值为NaN
null转换数值为0
强转整数
parseInt(字符,进制)可以将指定进制方式字符串转换为10进制数值,是toString()逆转换
var str=“20”
var num=parseInt(str)
如果第二个没有填写进值,则表示使用10进制数值转换
var str=“20”
var num=parseInt(str,2)
将2进制字符串转换为数值
var str="16a"部分数值,部分字符
var str="a16"部分字符,部分数值
var num=parseInt(str)
通过parseInt转换数值可以从开始转换到字符前为止变成数值,如果第一位是字符,返回NaN
布尔值强制转化数值类型,会变成NaN
var str=“false”
var num=parseInt(str)
undefined转换也会变成NaN
null转换一样也是NaN
强转为小数
parseFloat(); 强转小数和parseInt类似,只不过可以保留小数位
转换为布尔值
Boolean(数据) 转换为布尔值
“” 0 false,undefined,null,NaN 转换为布尔值都会变成false,除此之外转换都是true