Javascript笔记——Javascript数据类型转换

在javascript中数据类型的转换分为两种,一种是隐式类型转换,还有一种是强制转换,下面来简单介绍下这两种数据类型的转换。



- 隐式类型转换

在没有特意指定类型来进行数据转换的都是隐式类型转换,以下的三种情况都是属于隐式类型转换。

1、如果在字符串之间或者一个字符串与任意数据类型的变量之间使用+,那么“+”就代表连接符号,而不是加号,会将数据类型转化为String类型。

var a="123";
console.log(a+"1");//输出1231
console.log(a+1);//输出1231
console.log(a+1.1);//输出1231.1
console.log(a+true);//输出123true
console.log(a+undefined);//输出123undefined
console.log(a+null);//输出123null

2、除去+号外,其余的几种运算符号(包括-、*、/、%、++、- -),会将数据类型隐式转换为Number类型。

var a="123";
console.log(typeof a);//string
console.log(typeof (a-2));//number
console.log(typeof (a*2));//number
console.log(typeof (a/2));//number
console.log(typeof (a%2));//number
console.log(typeof (a++));//number
console.log(typeof (a--));//number

3、使用比较运算符(包括>、<、>=、<=、==、!=、===、!==)会把数据类型强制转换为Boolean类型。

console.log(typeof (1>2));//boolean
console.log(typeof (1<2));//boolean
console.log(typeof (1==2));//boolean
console.log(typeof (1<=2));//boolean
console.log(typeof (1>=2));//boolean
console.log(typeof (1!=2));//boolean




- 强制类型转换

强制转换其实很简单,只需要按照如下方法操作即可:

//你想要把变量转换成什么类型,那么就用你想要转化为的类型做方法名:
//要转换成的数据类型(要进行转换的变量名);
var a=0;
Number(a);
String(a);
Boolean(a);




1、Number( )

将一个变量强制转换为数值类型一共有一下几种情况。

类型强制转化为Number类型
String如果该字符串全为数字,就为当前数字;如果含有其他字符,那么改变量的值为NaN;如果是空字符串或者字符串中只含有空格,那么就转换为0 。
Booleantrue=》1 ; false=》0
Null0
UndefinedNaN



将变量转换为数值类型的还有两个方法,分别是parseInt( )、parseFloat( )。
注意:这两个方法和Number( )有一点区别,他们会把凡是没有数字的变量(包括null和undefined)转换为NaN。
parseInt(变量名); 将一个变量转换成整型,不保留小数,碰到不是数字的字符才停止转换。
parseFloat(变量名); 将一个变量转换成浮点型,保留小数,碰到不是数字的字符(除了第一个小数点)才停止转换。

var a="123";
document.write(a+"按parseInt转化-->"+parseInt(a)+"<br>");
document.write(a+"按parseFloat转化-->"+parseFloat(a)+"<br>");

a="12.2545";
document.write(a+"按parseInt转化-->"+parseInt(a)+"<br>");
document.write(a+"按parseFloat转化-->"+parseFloat(a)+"<br>");

a="123.125a225d";
document.write(a+"按parseInt转化-->"+parseInt(a)+"<br>");
document.write(a+"按parseFloat转化-->"+parseFloat(a)+"<br>");

a="a75375";
document.write(a+"按parseInt转化-->"+parseInt(a)+"<br>");
document.write(a+"按parseFloat转化-->"+parseFloat(a)+"<br>");

a=true;
document.write(a+"按parseInt转化-->"+parseInt(a)+"<br>");
document.write(a+"按parseFloat转化-->"+parseFloat(a)+"<br>");


123parseInt转化-->123
123parseFloat转化-->123
12.2545parseInt转化-->12
12.2545parseFloat转化-->12.2545
123.125a225d按parseInt转化-->123
123.125a225d按parseFloat转化-->123.125
a75375按parseInt转化-->NaN
a75375按parseFloat转化-->NaN
trueparseInt转化-->NaN
trueparseFloat转化-->NaN




2、String( )

通过String方法可以将其他类型的变量转换为String类型,无论是什么类型的变量转换为String只是加上双引号。例如:
123 ->”123”
true -> “true”
false-> “false”
null -> “null”
undefined->”undefined”
除了String( )外,toString( )方法也可以将一个变量转换为字符串,该方法继承自Object。
通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。但是null和undefined是没有toString( )方法的。

var v=12;
console.log(typeof v.toString());//string

toString( )方法可以传递一个参数,表示数值的基数。 默认情况下 参数是10。另外对于非数值类型(boolean,string等)设置toString()的参数是无效的。

var v=12;
console.log(v.toString(16));//c
console.log(v.toString(8));//14
console.log(v.toString(2));//1100



3、Boolean( )

对于Boolean( ),只有当变量为0,false,null、undefined、空字符串的时候才会转会为false,其余都为true。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值