-
1. 如何清空数组
let arr = [1, 2, 3, 4, 5]; // 修改数组为空数组 arr = []; // 将数组的长度设为0 arr.length = 0; // 将数组从第0个数据删到最后一个数据 arr.splice(0, arr.length); console.log(arr);
-
2. 如何将数组转换为字符串
let arr = [1, 2, 3, 4, 5]; // 调用.toString()方法 let str = arr.toString(); console.log(str); // 1,2,3,4,5 console.log(typeof str); // string
-
3. 如何将数组转换成指定格式的字符串
let arr = [1, 2, 3, 4, 5]; // join方法默认情况下如果没有传递参数, 就是调用toString(); // join方法如果传递了参数, 就会将参数作为元素和元素的连接符号 let str = arr.join("+"); console.log(str); // 1+2+3+4+5 console.log(typeof str); // string
-
4. 如何将两个数组拼接为一个数组
-
concat() 方法
- 注意点: concat()方法不会修改原有的数组, 会生成一个新的数组返回给我们
let arr1 = [1, 3, 5]; let arr2 = [2, 4, 6]; // 格式: 数组1.concat(数组2); let res = arr1.concat(arr2); console.log(res); // [1, 3, 5, 2, 4, 6] console.log(typeof res); // object // 注意点: concat()方法不会修改原有的数组, 会生成一个新的数组返回给我们 console.log(arr1); console.log(arr2);
- 注意点: concat()方法不会修改原有的数组, 会生成一个新的数组返回给我们
-
扩展运算符
- 注意点: 扩展运算符也不会修改原有的数组, 也会生成一个新的数组返回给我们
let arr1 = [1, 3, 5]; let arr2 = [2, 4, 6]; // 注意点: 扩展运算符在解构赋值中(等号的左边)表示将剩余的据打包成一个新的数组 // 扩展运算符在等号右边, 那么表示将数组中所有的数据解开, 放到所在的位置 let res = [...arr1, ...arr2]; // let res = [1, 3, 5, 2, 4, 6]; // 注意点: 扩展运算符也不会修改原有的数组, 也会生成一个新的数组返回给我们 console.log(arr1); console.log(arr2);
- 注意点: 扩展运算符也不会修改原有的数组, 也会生成一个新的数组返回给我们
-
注意点: 数组不能使用加号进行拼接, 如果使用加号进行拼接, 会先转换成字符串再拼接
let arr1 = [1, 3, 5]; let arr2 = [2, 4, 6]; // 注意点: 数组不能使用加号进行拼接, 如果使用加号进行拼接, 会先转换成字符串再拼接 let res = arr1 + arr2; let res = arr1.concat(arr2); console.log(res); // 1,3,52,4,6 console.log(typeof res); // string
-
concat() 方法
-
如何对数组中的内容进行反转
-
reverse() 方法
- 注意点: 会修改原有数组
let arr = [1, 2, 3, 4, 5]; // [1, 2, 3, 4, 5] [5, 4, 3, 2, 1] let res = arr.reverse(); console.log(res); // [5, 4, 3, 2, 1] // 注意点: 会修改原有数组 console.log(arr); // [5, 4, 3, 2, 1]
- 注意点: 会修改原有数组
-
reverse() 方法
-
如何截取数组中指定范围内容
-
slice() 方法
- 特点: slice方法是包头不包尾(包含起始位置, 不包含结束的位置), 不会修改原有数组
let arr = [1, 2, 3, 4, 5]; // 0 1 2 3 4 // [1, 2, 3, 4, 5] // slice方法是包头不包尾(包含起始位置, 不包含结束的位置) let res = arr.slice(1, 3); console.log(res); // slice()方法不会修改原有数组 console.log(arr);
- 特点: slice方法是包头不包尾(包含起始位置, 不包含结束的位置), 不会修改原有数组
-
slice() 方法
-
如何查找元素在数组中的位置
-
indexOf() 方法
- 参数1: 需要查找的元素
- 参数2: 从什么位置开始查找
- 注意点: indexOf方法默认就是从左至右的查找, 一旦找到就会立即停止查找
// 0 1 2 3 4 5 let arr = [1, 2, 3, 4, 5, 3]; // indexOf方法如果找到了指定的元素, 就会返回元素对应的位置 // 注意点: indexOf方法默认就是从左至右的查找, 一旦找到就会立即停止查找 let res = arr.indexOf(3); console.log(res); // 2 // indexOf方法如果没找到指定的元素, 就会返回-1 let res = arr.indexOf(6); console.log(res); // -1 // 参数1: 需要查找的元素 // 参数2: 从什么位置开始查找 let res = arr.indexOf(3, 4); console.log(res); // 5
-
lastIndexOf()方法
- 参数1: 需要查找的元素
- 参数2: 从什么位置开始查找
- 注意点: lastIndexOf()方法默认就是从右至左的查找, 一旦找到就会立即停止查找
// 0 1 2 3 4 5 let arr = [1, 2, 3, 4, 5, 3]; // lastIndexOf方法如果找到了指定的元素, 就会返回元素对应的位置 // 注意点: lastIndexOf方法默认就是从右至左的查找, 一旦找到就会立即停止查找 let res = arr.lastIndexOf(3); console.log(res); // 5 // lastIndexOf方法如果没找到指定的元素, 就会返回-1 let res = arr.lastIndexOf(6); console.log(res); // -1 // 参数1: 需要查找的元素 // 参数2: 从什么位置开始查找 let res = arr.lastIndexOf(3, 4); console.log(res); // 2
-
indexOf() 方法
-
如何判断数组中是否包含某个元素
-
indexOf() 方法和lastIndexOf() 方法
let arr = [1, 2, 3, 4, 4]; // 我们可以通过indexOf和lastIndexOf的结果, 判断是否是-1即可, -1代表数组中不包含这个元素 let res = arr.indexOf(8); // let res = arr.lastIndexOf(8); console.log(res); // -1
-
includes() 方法
let arr = [1, 2, 3, 4, 4]; let res = arr.includes(8); console.log(res); // false let res = arr.includes(4); console.log(res); // true
-
indexOf() 方法和lastIndexOf() 方法