JavaScript笔记整理4 -- JS基础概念之复合数据类型( 数组与对象)
数组
:一组数据有序的集合,它属于符合数据类型,至少可以存储一个数。
概念
数组元素
:数组的每一个数据。
- 访问数组中指定的元素,要通过下标来访问;
格式:数组变量名[
下标]
数组下标(索引)
:每一个元素都对应着一个数组下标,数组下标由0开始第一个数组元素的下标识0,第二个是1,第三个是2,以此类推。
数组其实也是对象,对象由属性和方法组成,下面介绍一个数组中常用的方法,获取数组的长度。
数组长度length
格式:数组变量名.length
- 获取的值是整数类型。
定义数组
显式创建数组
:使用new关键字和Array()方法定义数组。
同样具备两种方法:
- 直接定义数组后赋值
格式:var
数组变量名= new Array("
数组元素1","
数组元素2","
数组元素3");
- 定义空数组再通过下标添加元素
定义数组的两种方式(推荐第一种):
1)创建空数组 格式:var
数组变量名=new Array();
2)创建指定长度的数组 格式:var
数组变量名=new Arryay(
数组长度);
赋值:
arr[0]="数组元素1";
arr[1]="数组元素2";
arr[2]="数组元素3";
隐式创建数组
:使用[]定义数组。
有两种方法如下:
- 直接定义并添加数组元素
格式:var
数组变量名=["
数组元素1","
数组元素2","
数组元素3"];
- 定义空数组再通过下标添加元素
格式例子:
var arr=[];
arr[0]="数组元素1";
arr[1]="数组元素2";
arr[2]="数组元素3";
//此处如果再添加 arr[99]="新元素";
//数组的长度将为100。
注意:工作中一般都是用[]创建数组,基本不使用new关键字和Array数组方法来创建。
一维数组
:一个数组内所有的元素数据类型都不是数组类型,就是一维数组。
多维数组
:超过一维数组的都可以叫多维,多维数组指的是一个数组中的元素又是一个数组。
定义二维数组
格式例子:
var arr=[
"数组元素1",
"数组元素2",
["二维数组元素1","二维数组元素2","二维数组元素3"]
];
访问多维数组的元素
格式:数组变量名[
一维数组的下标][
二维数组的下标]
二维数组的长度
length获取的是当前数组的一维长度,例如上面例子的长度为3。
数组的遍历
:操作数组中的每一个数组元素。
使用for…in语句遍历
- for…in语句本身是用来遍历对象的
格式:
for(var 变量名 in 数组变量名){
数组变量名[变量名];
}
使用for循环遍历
遍历:
for(var i=0;i<数组变量名.length;i++){
数组变量名[i];
}
- 这段代码可进行优化,如下:
var 数组长度变量名=数组变量名.length;
for(var i=0;i<数组长度变量名;i++){
数组变量名[i];
}
==注意==:一般情况下使用for循环来遍历数组,因为使用for循环遍历数组非常直观。 ## 遍历二维数组 理解:**行数**是这个**二维数组**的长度,**列数**是这个二维数组下的**一维数组**的长度决定。
遍历:
var 行数变量名=二维数组变量名.length;
for(var i=0;i<二维数组长度变量名;i++){
var 列数变量名=二维数组变量名[i].length;
for(var j=0;j<列数变量名;j++){
二维数组变量名[i][j];
}
}
对象
概念
对象是由属性和方法组成的。
在JavaScript中一切皆是对象。
对象的分类
对象分为