了解数组
首先,我们需要知道数组是什么,能干什么,有什么用。
数组,它是一组有序的数据,可以把一组相关的数据一起存放,并提供方便的访问方式。
创建数组
数组创建有两种方式
第一种:通过new关键字创建
var arr = new Array();
当new Array()括号里面为空时,没有不传参数,表示创建一个空数组;当里面的值为一个数字时,表示数组最大长度是这个值,比如:
var arr = new Array();
console.log(arr.length);
var arr = new Array(5);
console.log(arr.length);
这里就解释了传参和不传参数的区别;里面还可以写入存储数据的值,比如:
var arr = new Array(1, 2, 3, 4, 5);
console.log(arr);
第二种:通过字面量的形式创建
var arr = [];
里面直接写入需要存放数据的值
var arr = [1, 2, 3, 'hello', '你好'];
!!!注意:数组中可以存放任意类型的数据,不是只能存放一种数据类型。这里还有同学不知道数据类型有哪些,可以参考一下这个地址->学习JS基础部分一
获取数组中的元素
获取数组的元素我们需要知道数组的长度,如果超过了数组的长度,获取的值会显示undefined,例如:
var arr = [1, 2, 3, 'hello', '你好'];
console.log(arr[0]);//1,获取的是数组第一个值
console.log(arr[3]);//hello,获取的是数组第四个值
console.log(arr[5]);//undefined,数组的第六个位置上没有值,会显示undefined
还有一点前面没有讲到的,数组的下标是从0开始的,0对应的是第一个值,1对应的是第二个值,以此类推。
如果想把数组中的值全部打印出来,那么上面的方法会比较繁琐,所以我们可以通过循环的方式去遍历数组
var arr = [1, 2, 3, 'hello', '你好'];
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
数组下标是从0开始的,我们定义起始值i为0,这里为什么不能等于数组长度呢?因为数组下标从0开始,那么有5个值,长度是5,下标依次是0,1,2,3,4,数组最大下标始终是要比长度小于1的;那么如果等于长度的话,会打印undefined,因为数组下标最大的是4,等于长度的话就是5,arr[5]在数组中没有值,所以会打印undefined。这就是我们遍历数组其中的方法,如果有同学不知道for循环,建议点击前面的链接去看看——学习JS基础部分一
数组方法
前面讲了如何去创建数组,这里我们讲一下数组中有哪些常见的方法
方法 | 说明 |
---|---|
concat | 连接两个或更多的数组,并返回结果 |
every | 检测数值元素的每个元素是否都符合条件 |
fill | 使用一个固定值来填充数组 |
filter | 检测数值元素,并返回符合条件所有元素的数组 |
forEach | 数组每个元素都执行一次回调函数 |
includes | 判断一个数组是否包含一个指定的值 |
indexOf | 搜索数组中的元素,并返回它所在的位置 |
isArray | 判断对象是否为数组 |
join | 把数组的所有元素放入一个字符串 |
lastIndexOf | 搜索数组中的元素,并返回它最后出现的位置 |
map | 通过指定函数处理数组的每个元素,并返回处理后的数组 |
pop | 删除数组的最后一个元素并返回删除的元素 |
push | 向数组的末尾添加一个或更多元素,并返回新的长度 |
reverse | 反转数组的元素顺序 |
shift | 删除并返回数组的第一个元素 |
slice | 选取数组的一部分,并返回一个新数组 |
some | 检测数组元素中是否有元素符合指定条件 |
sort | 对数组的元素进行排序 |
splice | 从数组中添加或删除元素 |
toString | 把数组转换为字符串,并返回结果 |
unshift | 向数组的开头添加一个或更多元素,并返回新的长度 |
这里只是给大家列举了常见的方法,下周我们来讲讲具体方法的实现!感谢大家观看^_^