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;
相关推荐:
Atas ialah kandungan terperinci js数据类型有哪些?这些js数据类型之间是如何转换的?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!