JS的数据类型
- 简单类型
字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)
- 复杂类型
数组(String)、对象(Object)
数字类型(Number)
js中只有一种数字类型。数字可以带小数点,也可以不带小数点。
var num1 = 12; // 不带小数点
var num2 = 3.14; // 带有小数点
但数字的数值极大或极小时,可以使用科学计数法的方式
var x = 9e6; // x为9000000
var y = 9e-6; // y为0.000009
布尔类型(Boolean)
布尔类型只有两个值: true和false
var m = true;
var n = false;
布尔值通常用来做条件的判断。
字符串类型(String)
字符串是用来存储字符类型的变量。字符串的引号中可以是任意字符,引号可以是单引号或双引号。
var carName1 = 'falali';
var carName2 = "lanbojini";
如果要在字符串中使用引号,必须要与包围字符串的引号相区别。
var question = '你有"毛病"吗?'; // 当字符串内有双引号,包围字符串的引号就要用单引号
var answer = "It's really"; / /当字符串内有单引号,包围字符串的引号就要用双引号
Undefined和Null类型
Undefined表示变量声明后没有被赋值。
可以给变量的值设置为Null来清空变量。
var x;
console.log(x); // 由于x只声明而没有赋值,此时输出的就为undefined
var y = 2;
y = null;
console.log(y); // 此时输出y,结果为null
数组类型(String)
数组的下标(索引)从0开始,可以通过Array.length
来获取到数组的长度,并且数组最后一个元素的索引总比数组长度小1.
- 通过new的方式创建数组
var cars = new Array();
cars[0] = 'Saab';
cars[1] = 'Volvo';
cars[2] = 'BMW';
- 通过字面量的方式
var cars = ['Saab','Volvo','BMW'];
对象类型(Object)
对象由花括号包裹。在括号内部,有属性和方法,统称对象的成员,并且都是以键值对的形式来定义的,对象成员之间用逗号分隔。
var person = {
// 下面三个是属性
name: 'Tom',
age: 18,
sex: male,
// 下面一个是方法
run: function () {
console.log('我可以跑');
}
};
对象成员的调用:
// 调用person对象的属性,有两种方法
name = person.name;
name = person["name"];
// 调用person对象的方法
person.run();
声明变量类型
在声明变量的时候,除了使用字面量的方式声明变量,也可以使用关键字“new”来声明其类型。
var answer = new String;
var num = new Number;
var check = new Boolean;
var cars = new Array;
var person = new Object;
注意:
- js中的变量都是对象,当声明一个变量就相当于创建了一个新的对象
- 使用的变量如果不声明,默认就当做是全局变量
- 通过new的方式声明变量不推荐,常用的还是以字面量的方式来声明