数组定义格式
方式1: var 变量名 = new Array(元素列表);
var arr = new Array(1,2,3); //1,2,3 是存储在数组中的数据(元素)
方式2:var 变量名 = [元素列表];
var arr = [1,2,3]; //1,2,3 是存储在数组中的数据(元素)
注意:Java中的数组静态初始化使用的是{}定义,而 JavaScript 中使用的是 [] 定义==
数组元素访问
访问数组中的元素和 Java 语言的一样,格式如下:arr[索引] = 值;
JavaScript 中的数组相当于 Java 中集合。数组的长度是可以变化的
,而 JavaScript 是弱类型,所以可以存储任意的类型的数据
。
例如如下代码:
// 变长
var arr3 = [1,2,3];
arr3[10] = 10;
alert(arr3[10]); // 10
alert(arr3[9]); //undefined
上面代码在定义数组中给了三个元素,又给索引是 10 的位置添加了数据 10,那么 索引3
到 索引9
位置的元素是什么呢?我们之前就介绍了,在 JavaScript 中没有赋值的话,默认就是 undefined
。
如果给 arr3
数组添加字符串的数据,也是可以添加成功的
arr3[5] = "hello";
alert(arr3[5]); // hello
数组属性:
Array 对象提供了很多属性,如下图是官方文档截取的
而我们只讲解 length
属性,该数组可以动态的获取数组的长度。而有这个属性,我们就可以遍历数组了
var arr = [1,2,3];
for (let i = 0; i < arr.length; i++) {
alert(arr[i]);
}
数组方法:
Array 对象同样也提供了很多方法,如下图是官方文档截取的
而我们在课堂中只演示 push
函数和 splice
函数。
push 函数:给数组添加元素,也就是在数组的末尾添加元素
参数表示要添加的元素
// push:添加方法
var arr5 = [1,2,3];
arr5.push(10);
alert(arr5); //数组的元素是 {1,2,3,10}
splice 函数:删除元素
参数1:索引。表示从哪个索引位置删除
参数2:个数。表示删除几个元素
// splice:删除元素
var arr5 = [1,2,3];
arr5.splice(0,1); //从 0 索引位置开始删除,删除一个元素
alert(arr5); // {2,3}
测试代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// 方式一
var arr = new Array(1,2,3);
alert(arr); // 1,2,3
// 方式二
var arr1 = [12,23,34];
alert(arr1); // 12,23,34
// 特点:JavaScript数组相当于Java中集合。变长变类型
var arr2 = [1, 2, 3];
arr2[10] = 10;
alert(arr2); // 1,2,3,,,,,,,10
alert(arr2.length); // 11
arr2[5] = "hello";
alert(arr2[5]); // hello
alert(arr2); // 1,2,3,,hello,,,,,,10
// 属性: length数组中元素的个数
var arr3 = [1, 2, 3, 4, 5];
for(let i = 0; i < arr3.length; i++){
alert(arr3[i]);
}
// 方法:
// push: 添加方法
var arr4 = new Array(1, 2, 3, 4);
arr4.push(10);
alert(arr4); // 1,2,3,4,10
// splice: 删除元素
arr4.splice(0,2);
alert(arr4); // 删除小标[0, 2),前闭后开
</script>
</body>
</html>