1.数组元素访问和修改方法
const arr = ['a', 'b', 'c'];
// 添加/删除元素
arr.push('d'); // 末尾添加元素,返回新长度
arr.pop(); // 删除最后一个元素,返回被删除的元素
arr.unshift('x'); // 开头添加元素,返回新长度
arr.shift(); // 删除第一个元素,返回被删除的元素
// 截取和拼接
arr.slice(1, 3); // 截取部分数组,不改变原数组
arr.splice(1, 1, 'x'); // 删除/添加元素,改变原数组
2.查找和判断方法
const arr = [1, 2, 3, 4, 5];
// 查找元素
arr.indexOf(3); // 返回元素首次出现的索引,没找到返回 -1
arr.lastIndexOf(3); // 返回元素最后出现的索引,没找到返回 -1
arr.includes(3); // 判断数组是否包含某个值,返回 true/false
arr.find(x => x > 3); // 返回第一个满足条件的元素
arr.findIndex(x => x > 3); // 返回第一个满足条件的元素的索引
3.遍历和处理方法
const arr = [1, 2, 3, 4, 5];
// 遍历
arr.forEach((item, index) => {
console.log(item, index);
}); // 遍历数组,无返回值
// 映射转换
arr.map(x => x * 2); // 返回新数组,每个元素都经过处理
// 筛选
arr.filter(x => x > 2); // 返回满足条件的元素组成的新数组
// 累计计算
arr.reduce((sum, cur) => sum + cur, 0); // 从左到右累计计算
arr.reduceRight((sum, cur) => sum + cur, 0); // 从右到左累计计算
4.排序和反转方法
const arr = [3, 1, 4, 1, 5];
// 排序
arr.sort(); // 按字符串顺序排序
arr.sort((a, b) => a - b); // 自定义排序(数字升序)
arr.sort((a, b) => b - a); // 自定义排序(数字降序)
// 反转
arr.reverse(); // 反转数组顺序
5. 数组转换方法
const arr = [1, 2, 3];
// 转换为字符串
arr.join(','); // 用指定分隔符连接成字符串
arr.toString(); // 转换为字符串
6.判断和检测方法
const arr = [1, 2, 3];
// 判断
arr.some(x => x > 2); // 是否存在满足条件的元素
arr.every(x => x > 0); // 是否所有元素都满足条件
7.数组合并方法
const arr1 = [1, 2];
const arr2 = [3, 4];
// 合并数组
arr1.concat(arr2); // 合并数组,返回新数组
[...arr1, ...arr2]; // 使用展开运算符合并
8. 填充方法
const arr = new Array(3);
// 填充
arr.fill(0); // 用指定值填充数组
arr.fill(0, 1, 2); // 指定开始和结束位置填充
9. 扁平化方法(ES2019+)
const arr = [1, [2, [3, 4]]];
// 扁平化
arr.flat(); // 默认扁平化一层
arr.flat(2); // 指定扁平化层数
arr.flat(Infinity); // 完全扁平化
// 映射并扁平化
arr.flatMap(x => [x, x * 2]); // 相当于 map 后再 flat(1)
这些方法的特点:
- 有些方法会改变原数组(如 push、pop、sort)
- 有些方法不改变原数组,而是返回新数组(如 map、filter、slice)
- 有些方法返回布尔值(如 includes、some、every)
- 有些方法返回特定值(如 find、indexOf)
建议根据具体需求选择合适的方法,并注意是否会修改原数组。
标签:返回,常用,JavaScript,const,元素,arr,数组,方法 From: https://blog.csdn.net/m0_73574455/article/details/144717034