JavaScript数组
数组
1.数组的概念
- 数组是值的有序集合
- 数组中的每个值 称之为 元素
- 每个元素可以是任意数据类型的值
- 每个元素都有索引(下标)
- 元素的索引从0开始,按照顺序递增。 元素最大的索引 2^32-2
2.创建数组
- 直接量
[]
- 构造函方式
new Array()
var mycars=new Array()
3.读写数组中的元素
-
数组名[索引]
var arr = [100,200,300, "曹操", "刘备", "武松", 900]; console.log(arr); console.log(arr[2]);
4.稀疏数组
-
js数组的索引是连续的
-
没有连续的给元素赋值 , 没有赋值的元素会自动赋值 undefined
var arr = [100,200,300]; arr[9] = 100; console.log(arr.length); console.log(arr[0]); console.log(arr[1]); console.log(arr[2]); console.log(arr[9]); console.log(arr[3]); console.log(arr);
效果台输出
10
100
200
300
100
undefined
Array[10]
5.添加和删除 数组的元素
-
添加数组元素
- 指定索引来添加元素
- 把数组长度当做新元素的索引
arr[arr.length] = value
- 在数组的最后添加元素 push()
arr.push()
- 在数组的前面添加元素 unshift()
arr.unshift()
- 在数组的任意位置添加元素 splice(index, 0, value)
-
删除数组的元素
- 改变数组的length属性
arr.length -= 1; arr.length -= 2
- 删除最后面的一个元素 pop()
- 删除数组的第一个元素 shift()
- 删除指定位置的指定个数的元素 splice(index, length)
- 改变数组的length属性
6.数组遍历
-
for 循环
-
for in
<script> //创建数组 var arr = ["马奶奶", "牛奶奶", "羊奶奶", "欧阳奶奶", "慕容奶奶", "完颜奶奶", "上官奶奶", "爱新觉罗奶奶"]; //循环 for (var i = 0; i < arr.length; i ++) { console.log(arr[i]); } console.log(""); //遍历的 另一种写法 for (var i in arr) { console.log(arr[i]); } </script>
7.多维数组
8.数组的方法
- join([间隔符号]) 把数组的每个元素拼接成一个字符串 返回字符串
- slice(start, end) 截取数组中的一部分, 返回一个新数组
- concat(arr, arr....) 合并数组. 返回一个新数组
- toString() 把数组转换为字符串
- reverse() 翻转数组 副作用
- sort() 排序 副作用
- push() pop() 副作用
- shift() unshift() 副作用
9.类数组对象
-
arguments
-
Elementcollection 元素的集合
document.getELementsByTagName() element.getElementsByTagName()
10.作为数组的字符串
- 字符串具有部分数组特性
- 字符串也有length属性 获取字符串的长度
- 也可以通过[索引值] 取出字符串中的一个字符