Javascript 数据类型的转换

转换为数值型
  • 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 的值
Booleantruefalse
String任何非空字符串空字符串
Number任何非零数字(包括无穷大)0 和 NaN
Object任何非空对象null
undefinedundefined
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 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值