类型转换
将number转换为string类型
var num = 4399;
// 1.使用toString方法
var numToStr = num.toString();
// 2.使用`${}`运算符
var numToStr = `${num}`;
// 3.再变量后加上""
var numToStr = num + "";
// 4.String()重新定义
var numToStr = String(num);
将string转换为number类型
var str = "4399";
// 1.使用parseInt()
var strToNum = parseInt(str);
// 2.Number()重新定义
var strToNum = Number(str);
// 3.将变量乘1
var strToNum = str * 1;
进制转换
toString(n)方法能将十进制转其它进制,参数n为要转成的进制
parseInt(num,n)可以将其它进制转为十进制,参数num为要转的数,n为该数的默认进制
var num1 = 22;
// 十进制转二进制:toString
numTo1 = num1.toString(2);
console.log(numTo1); //输出10110
// 二进制转十进制:parseInt
var num2 = 10110;
numTo2 = parseInt(num2, 2);
console.log(numTo2); //输出22
注意:
当num为小数点后7位小数时,使用parseInt()会发生改变,如下面num=0.0000003转换为整形本应该是0,但却是3
var num = 0.0000003;
console.log(parseInt(num));
// 输出3
原因是因为parseInt会将参数自动转换成字符串,再去做取整操作,而当num为小数点后7位小数时会采用3e-7这个记数法记数,当转换成字符串时会为"3e-7",parseInt方法转换是判断完3后发现第二个e是一个非数字,就直接返回3了。