对象分成三种:
- 内建对象
- 宿主对象
- 自定义对象
数组Array也是一个对象,它和普通的对象功能类似,也是用来存储一些值的。
不同的是普通对象是使用字符串作为属性名的,而数组是使用数字来作为索引操作元素。
数组中的索引是从0开始的,因此从0开始的整数都是索引。
数组的存储性能比普通对象要好,在开发中会经常使用数组存储一些数据。
// 创建一个数组对象
var arr = new Array();
console.log(typeof arr); // 返回object,当使用typeof检查一个数组时,会返回object
向数组中添加元素,语法:数组[索引] = 值;
读取数组中的元素,语法:数组[索引]
如果读取不存在的索引,不会报错会返回undefined
var arr = new Array();
arr[0] = "我是翠花";
arr[1] = "我是光头强";
console.log(arr[0]); // 输出我是翠花
console.log(arr[1]); // 输出我是光头强
console.log(arr[2]); // 输出undefined
获取数组的长度
可以使用length属性获取数组的长度(元素的个数)。
语法:数组.length
console.log(arr.length); // 输出2
对于连续的数组,使用length可以获取到数组的长度(元素的个数)。
对于非连续的索引,使用length会获取到数组的最大索引+1,所以尽量不要创建非连续的数组。
var arr = new Array();
arr[0] = "我是翠花";
arr[10] = "我是光头强";
console.log(arr.length); // 输出11
修改length:
如果修改的length大于了原来的长度,则多出部分会空出来;
如果修改的length小于了原来的长度,则多出的部分会被删除。
var arr = new Array();
arr[0] = "我是翠花";
arr[10] = "我是光头强";
arr.length = 1; // 修改length长度为1
console.log(arr); // 只输出我是翠花
向数组的最后一个位置添加元素:
语法:数组[数组.length] = 值;
可以永远向数组的最后一位添加元素。
var arr = new Array();
arr[0] = "我是翠花";
arr[1] = "我是光头强";
arr[arr.length] = 10;
arr[arr.length] = 20;
console.log(arr);