首页 >web前端 >js教程 >js数据类型有哪些?这些js数据类型之间是如何转换的?

js数据类型有哪些?这些js数据类型之间是如何转换的?

不言
不言原创
2018-07-20 16:13:011665浏览

JS引用数据类型有哪些?JS中有六种数据类型:Undefined、Null、Boolean、Number、String以及Object。其中前面五种是简单数据类型,也是基本常用的js数据类型,最后一种是复杂数据类型,那么这些数据类型之间是如何转换的呢?让我们来看一看下面的介绍。

一、声明变量

一条语句,多个变量

可以在一条语句中声明很多变量。该语句以 var 开头,并使用逗号分隔变量即可:

var name="Gates", age=56, job="CEO";

声明也可横跨多行:

var name="Jim",
age=32,
job="CEO";

二、显式数据类型转换

1.转数字
有三个函数可以把非数值转换为数值:Number()、parseInt()、parseFloat()。Number可以用于任何数据类型,而另两个函数则专门用于把字符串转换为数值。

1.Number转换:

转换规则如下:

1)如果是Boolean值,true和false将分别被转换为1和0。
2)如果是数字值,只是简单的传入和返回。
3)如果是null值,返回0。
4)如果是undefined,返回NaN。
5)如果是字符串,遵循下列规则:
· 如果字符串只包含数字,则将其转换为十进制数值;
· 如果字符串包含有效的浮点格式,如"1.1",则将其转换为对应的浮点数值。
· 如果字符串中包含有效的十六进制格式,如"0xf",则将其转换为相应大小的十进制整数;
· 如果字符串为空,则将其转换为0;
· 其他,转换为NaN。
6)如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值。如果转换的结果是NaN,则调用对象的toString()方法,然后再次依照前面的规则转换返回的字符串值。

var num1 = Number("hello world"); //NaN
var num2 = Number("");                 //0
var num3 = Number("0011");        //11
var num4 = Number(true);            //1

2.parseInt()

忽略字符串前面的空格,直至找到第一个非空字符,会忽略后面的非数字字符;如果第一个字符不是数字符号或者负号,返回NaN;会将小数取整(向下取整)

var num1 = parseInt("1234blue");  //1234
var num2 = parseInt(" ");                //NaN
var num3 = parseInt(22.5):            //22

3.parseFloat()
与parseInt一样,唯一区别是parseFloat可以保留小数。

2.转字符串
可以将其它的数据类型转成字符串。

1.转型函数String()String()函数遵循下列转换规则:

1)如果值有toString()方法,则调用该方法并返回相应结果;
2)如果值是null,则返回"null";
3)如果值是undefined,则返回"undefined";

2.toString()的方法来进行转换

var num1 = 10;
var str1 = num1.toString();    //"10"

注意:
调用数值的toString()方法时,可以传递一个参数:输出数值的参数,通过这个值可以输出以二进制、八进制、十六进制,乃至其他任意有效进制格式表示的字符串值。

var num = 10;
num.toString(); //"10"
num.toString(2); //"1010"
num.toString(8); //"12"
num.toString(10); //"10"
num.toString(16); //"a"

三、转boolean类型
Boolean类型的字面值true和false是区分大小写的。任何非空字符串、任何非零数字值、任何对象可以转换为true,而空字符串、0和NaN、null和undefined则为false。

var mes = "hell0";
var mesBool = Boolean(mes);  //true

3.隐式转换

1.转number

var num = "123";
num = +num;

加减乘除以及最余都可以让字符串隐式转换成number.

2.转string

var str = 123;
str = str + "";

3.转boolean

var bool = 123;
bool = !!bool;

相关推荐:

js的数据类型及JS基本数据类型具体有哪几种

JS数据类型转换总结

以上是js数据类型有哪些?这些js数据类型之间是如何转换的?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn