转换为数值型
- Number() 只能转换数字,如果有字符存在,转换后就变成NaN;
- function、undefined、关键字、{ } 不能直接转换,需要先转换成字符串,再转成 Number;
- 空数组 [] 、空字符串 “”、null、false 返回转换成数值返回 0;
- true 返回1;
var a = "5";//5
var a = "4a";//NaN
var a;//NaN
var a = {};//NaN
function a(){};//NaN
var a = [];//0
var a = "";//0
var a = null;//0
var a = false;//0
var a = true;//1
console.log(Number(a));
parseInt () 将字符串转成整数数值,从第一个数字字符开始到第一个字符类型为止转换为整数数值。
var a = "34.2w";//34
var a = "fr3";//NaN
var a = "32fr3";//32
var a = true;//NaN
var a = false;//NaN
console.log(parseInt(a));
parseInt () 可以有两个参数,第一个参数是要转换的内容,第二个参数是该内容是什么进制的。
var a = "ff";
var b = "101010010101";
console.log(parseInt(a,16));//255
console.log(parseInt(b,2));//2709
parseFloat () 将字符串转成浮点型数值,从第一个数字字符开始到第一个字符类型为止转换为成浮点型数值。
var a = "34.2w";//34.2
var a = "fr3";//NaN
var a = "32fr3";//32
var a = true;//NaN
var a = false;//NaN
console.log(parseInt(a));
- toFixed ( ),参数为数值,意思是保留几位小数,会自动四舍五入。
- toPrecision ( ),参数为数值,意思是总共保留几位,会自动四舍五入使用科学计数法。
- toExponential ( ),参数为数值,意思是小数点后保留几位,不会自动四舍五入,一定科学计数法。
var a = 1555;
console.log(a.toFixed(1));//1555.0
console.log(a.toPrecision(2));//1.6e+3
console.log(a.toExponential(2));//1.56e+3
转换为字符串
String () ,如果需要转换的对象是数值,先将所有的数值转换为十进制,再转换为字符串。
var a=10;//10
var a=1555;//1555
var a=0;//0
var a=0xFF;//255
var a=4.1e+2;//410
console.log(String(a));
var a=true;//true
var a=false;//false
var a;//undefined
var a=null;//null
var a={a:1};//[object Object]
console.log(String(a));
- toString ( ),参数为按照什么进制转换为字符串。
- toLocaleString ( ),转换为本地字符串。
- toUTCString ( ),转换为格林尼治时间字符串。
var a = 1555;//3023
console.log(a.toString(8));
转换为布尔值
数据类型 | 转换为 true 的值 | 转换为 false 的值 |
---|---|---|
Boolean | true | false |
String | 任何非空字符串 | 空字符串 |
Number | 任何非零数字(包括无穷大) | 0 和 NaN |
Object | 任何非空对象 | null |
undefined | 无 | undefined |
false、" "、0、NaN、null、undefined 转换为布尔值都是false,除了这6种以外转换为布尔值都是true。
var a="";//false
var a=0;//false
var a=undefined;//false
var a=null;//false
var a=NaN;//false
var a=false;//false
console.log(Boolean(a));
转换为对象类型
Object (),强转为对象类型
```javascript
var a = 3;
console.log(Object(a));//Number { 3 }