javascript 数据类型转换

转载源地址:https://blog.csdn.net/Charissa2017/article/details/103755644.

任何内容转换为数值型

Number() 转换为number类型,如果有字符存在,转换后就变成NaN;
function、undefined、关键字、{ } 不能直接转换,需要先转换成字符串,再转成 Number;
空数组 [ ] 、空字符串 " "、null转换成数值返回 0;
true 返回1,false返回0;

var a="5";//5
var b="5a";//字符串中如果有字符存在,转换后就变成NaN
var c="";//空字符串转换为数值是 0

var a=true;//1
var a=false;//0

function a(){};//NaN
var a = [];//0
var a = null;//0

console.log(Number(a));

parseInt

使用parseInt转字符串,从第一个数字字符开始到第一个字符类型为止转换为数值

var a="52.1a";//52
var a="a45";//NaN
var a="4a5";//4

var a=true;//NaN
var a=false;//NaN
console.log(parseInt(a));

parseInt(要转换的内容,该内容是什么进制) 将他转换为10进制数值

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 (),强转为对象类型

var a = 3;
console.log(Object(a));//Number { 3 }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值