什么是数组的遍历?
数组的遍历就是依次取出数组中存储的所有数据, 我们就称之为数组的遍历
如何获取数组长度
console.log(arr.length);
什么是数组的解构赋值?
解构赋值是ES6中新增的一种赋值方式
注意点
1.在数组的解构赋值中, 等号左边的格式必须和等号右边的格式一模一样, 才能完全解构 (长度个数一样)
2.在数组的解构赋值中, 左边的个数可以和右边的个数不一样
3.在数组的解构赋值中, 右边的个数可以和左边的个数不一样;解构不到赋值undefined
4.在数组的解构赋值中,如果右边的个数和左边的个数不一样, 那么我们可以给左边指定默认值
5.在数组的解构赋值中, 如果左边的个数和右边的个数不一样, 那么如果设置默认值会被覆盖
6.在数组的解构赋值中, 还可以使用ES6中新增的扩展运算符来打包剩余的数据
7.在数组的解构赋值中, 如果使用了扩展运算符, 那么扩展运算符只能写在最后一个元素前
let [a, ...b] = [1, 3, 5];
增删改查
增
- 在数组最后添加一条数据
arr.push(数据); 注意他会返回新增后数组的长度length
arr.push(数据,数据); 可传多个值 - 在数组前面添加一条数据
arr.unshift(数据);注意他会返回新增后数组的长度length
删
- 删除数组最后一条数据
arr.pop(); - 删除数组最前面一条数据
arr.shift(); - 删除数组索引为N的数据
arr.splice(参数1,参数2);
参数1:从索引为(参数1里填写的数据)开始
参数2:删除(参数2里填写的数据)条元素
改
- arr[索引目录数] = "添加的数据";
- arr.splice(索引目录数a,索引目录数b,"添加的数据"c,"添加的数据"d);
a 代表从什么位置开始
b 代表需要替换的多少个元素(数据)
c 代表从指定位置开始,新的需要替换的内容(数据)
查
console.log(arr[N]);
数组的常用方法
- 清空数组
arr = [];
arr.length = 0;
arr.splice(0, arr.length)
- 将数组转换为字符串
let str = arr.toString();
- 将数组转换成指定格式字符串
join方法默认情况下如果没有传递参数, 就是调用toString();
join方法如果传递了参数, 就会将传递的参数作为元素和元素的连接符号
let str = arr.join("+");
- 将两个数组拼接为一个数组
注意点:
1.数组不能够使用加号进行拼接, 如果使用加号进行拼接会先转换成字符串再拼接
let arr1 = [1, 3, 5];
let arr2 = [2, 4, 6];
arr1.concat(arr2);
不会修改原有的数组, 会生成一个新的数组返回给我们
ES6
2.扩展运算符在解构赋值中(等号的左边)表示将剩余的数据打包成一个新的数组
3.扩展运算符在等号右边, 那么表示将数组中所有的数据解开, 放到所在的位置
let arr1 = [1, 3, 5];
let arr2 = [2, 4, 6];
let res = [...arr1, ...arr2]; // let res = [1, 3, 5, 2, 4, 6];
不会修改原有的数组, 会生成一个新的数组返回给我们
- 如何对数组中的内容进行反转
//[1, 2, 3, 4, 5] [5, 4, 3, 2, 1]
let res = arr.reverse();
会修改原有的数组
- 如何截取数组中指定范围内容
// 0 1 2 3
// [1, 2, 3, 4, 5]
// slice方法是包头不包尾(包含起始位置, 不包含结束的位置) ;
let res = arr.slice(1, 3);
console.log(res);
console.log(arr);
- 如何查找元素在数组中的位置
0 1 2 3 4
[1, 2, 3, 4, 5]
0 1 2 3 4 5
let arr = [1, 2, 3, 4, 5, 3];
indexOf方法如果找到了指定的元素, 就会返回元素对应的位置
indexOf方法如果没有找到指定的元素, 就会返回-1
注意点: indexOf方法默认是从左至右的查找, 一旦找到就会立即停止查找
let res = arr.indexOf(3); //里面是数据名
格式:arr.indexOf(参数1, 参数2);
参数1: 需要查找的元素
参数2: 从什么位置开始查找
lastIndexOf方法默认是从右至左的查找, 一旦找到就会立即停止查找
let res = arr.lastIndexOf(数据);
let res = arr.lastIndexOf(参数1, 参数2);
参数1: 需要查找的元素
参数2: 从什么位置开始查找
- 如何判断数组中是否包含某个元素
let arr = [1, 2, 3, 4, 5];
我们可以通过indexOf和lastIndexOf的结果, 判断是否是-1即可
let res = arr.indexOf(8);
let res = arr.lastIndexOf(8);
let res = arr.includes(8); 返回值 false / true
let res = arr.includes(4); 返回值 false / true