类型转换为number方法一:Number方法
Number方法是强制转换,将一个值强制转换为Number类型
Number 转 Number数字
会把其他进制转为10进制,其余不变
console.log(Number(12));//12
console.log(Number(NaN));//NaN
console.log(Number(Infinity));//Infinity
console.log(Number(010));//8
console.log(Number(1E6));//1000000
console.log(Number(0.1E-6));//1e-7
String 转 Number数字
- 如果是纯数字,那么直接转成Number
- 其他进制,原则上是转为十进制,但是八进制因为0开头,所以按照十进制转换的
- 只要含有非数字(除了进制、无穷以外、科学计数法以外)都是NaN
- 空字符串和都是空格的字符串都是0
console.log(Number("12"));//12
console.log(Number("-12"));//12
console.log(Number("-1.2"));//-1.2
console.log(Number("0xa
")); //10
console.log(Number("0b11")); //3
console.log(Number("123a"));//NaN
console.log(Number("abc123"));//NaN
console.log(Number(" "));//0
console.log(Number(""));//0
console.log(Number("Infinity"));//Infinity
console.log(Number("1.2E-4"));//0.00014
console.log(Number("a"));//NaN
- 布尔值 转 Number数字
console.log(Number(true)); //1
console.log(Number(false)); //0
- undefined 转 Number
console.log(Number(undefined)); //NaN
- null 转 Number数字
console.log(Number(null)); //0
- Object 转 数字
空数组是0 只有一个值的数组,会把这个值转成数字
多个值的数组是 NaN
其他对象都是NaN
console.log(Number([])); //0
console.log(Number(["1"]));//1
console.log(Number())
网友评论