本篇文章给大家带来的内容是关于js数据类型转换有哪些?js数据类型转换的方法总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换。
JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object。
object是引用类型,其它的五种是基本类型或者是原始类型。我们可以用typeof方法打印
来某个是属于哪个类型的。不同类型的变量比较要先转类型,叫做类型转换,
类型转换也叫隐式转换。隐式转换通常发生在运算符加减乘除,等于,还有小于,大于等。。
一、js显式数据类型转换
1.1 转数字(Number类型)
1)Number转换var a = '123';
a = Number(a);如果转换的内容本身就是一个数值类型的字符串,那么将来在转换的时候会返回自己。
如果转换的内容本身不是一个数值类型的字符串,那么在转换的时候结果是NaN。
如果要转换的内容是空的字符串,那以转换的结果是0。
如果是其它的字符,那么将来在转换的时候结果是NaN。
2)parseInt()var a = '123';
a = parseInt(a);忽略字符串前面的空格,直至找到第一个非空字符,还会将数字后面的非数字的字符串去掉。
如果第一个字符不是数字符号或者负号,返回NaN。
会将小数取整。(向下取整)
3)parseFloat();//浮点数(小数)
与parseInt一样,唯一区别是parseFloat可以保留小数。
1.2 转字符串(String)
1)String()var a = 123;a = String(a);
2)toString()的方法来进行转换(包装类)var a = 123; a = a.toString();undefined,null不能用toString。
1.3 转boolean类型var a ='true'; a = Boolean(a);
注意:在进行boolean转换的时候所有的内容在转换以后结果都是true,
除了:false、”“(空字符串)、0、NaN、undefined。
二、js隐式数据类型转换
2.1 转Numbervar a = '123';a=+a;
加减乘除以及最余都可以让字符串隐式转换成number。
2.2 转stringvar a = 123;a = a + '';
2.3 转booleanvar a = 123;a = !!a;
三、js值类型之间的数据类型转换
3.1 数字和字符串使用+运算符
数字和字符串如果使用+运算符进行操作,那么会将数字先转换为字符串,然后进行
字符串连接操作:var text = 'asd';var num = 123;
alert(text+num);
3.2 布尔值参与的+运算符操作
如果有布尔型参与,那么首先会将布尔值转换为对应的数字或者字符串,然后再进行相应的
字符串连接或者算数运算。var bool = true;var num = 8;
console.log(bool + num);
上面的代码是先将true转换为数字1,然后再进行算数加运算。var bool = true;var num = "8";
console.log(bool + num);
上面的布尔值会被转换为对应的字符串形式”true”,然后再进行字符串连接。
3.3 减法操作
如果进行减法操作,那么两个操作数都会先被转换为数字,然后在进行算数运算。var bool = true;var num = "8";
console.log(bool - num)
true会被转换为数字1,字符串”8”会被转换为数字8,然后进行算术运算。
乘,除,大于,小于跟减的转换也是一样.
3.4 ==等性运算 ###
undefined和null比较特殊,它们两个使用==运算符返回值是true。console.log(undefined==null);
其他值类型进行比较的时候都会将运算数转换为数字console.log("3"==3);
上面的代码会将字符串”3”转换成数字,然后再进行比较。console.log("1"==true);
上面的代码会分别将”1”和true转换成数字,然后进行比较。
相关推荐: