Javascript属于一种弱类型语言,定义变量时不需要指定类型,一个变量可以储存任何类型的值,但在运算时,JavaScript还是会把它转换成相应的数据类型。
Javascript中,数据存在着两种不同的储存方式,直接储存数据和间接储存数据,前者成为值类型数据;而后者通过储存数据的空间地址来间接保存数据,称为引用型数据。
三种基本数据类型:数值、字符串和布尔型。
数值型
Javascript数值不区分整数和浮点数,所遇到额数都能为浮点型数值来表示。除了基本的算术运算外,Javascript还提供了大量的算数函数,均包含在Math内置对象中。
如: 1
2
3var a = 100;
var c = a.toString() //转换为字符串
alert(typeof(c));1
2
3var a = 100;
var c = a + "" //转换为字符串
alert(typeof(c)); //返回值为string类型
字符串类型
字符串由Unicode字符、数字、标点符号等组成的字符序列,字符串出必须使用单引号或双引号包括。
如: 1
2
3
4
5var str = "abcdefg" //简单字符串
var str = "'JavaScript'" //包含单引号的字符串
var str = '<meta charset="utf-8">' //HTML字符换
var str = 1; //test
alert(str);1
2
3var str = "123.30";
var a = parseInt(str); //返回值为123
var b = parseFloat(str); //返回值为123.31
2
3var str = "123.30";
var a = str * 1;
alert(typof(a)) //返回nunmber类型
布尔型
布尔类型仅包括两个值true和false。分别表示逻辑的真和假。布尔值多用在逻辑运算,比较运算中的条件语句或运算符的条件而使用。
使用两个!!
就可以将任何值转为布尔型数据
如: 1
2
3
4var a = 100;
var c = !!a;
alert(c);
alert(typeof(c));
注意:以下为一组不同类型的假值: 1
2
3
4
5
61. 0 //Number
2. NaN //Number
3. ’’ //String
4. false //boolean
5. null //Object
6. undefined //Undefined
两个特殊值
除了上面的简单的三个数据类型,js中还有两个特殊的数据类型的值:null和undefined
null是Null类型的值,且Null类型只有一个值,即null,表示空值。当对象为空,挥着变量没有引用任何对象,其返回值就为null。当一个变量的值为null时,那么他的值就不是有效的对象、数组、数值、字符串和布尔型等。如果用以下代码测试其类型:
1
2var a = null;
alert(typeof(a));
三个引用型数据
引用型数据包括数组(Array)、对象(Object)和函数(Function)等,详细请移步下一篇博客~~