JavaScript Array数组常用方法详解

作者:闭包旅人

时间:2026-10-26

浏览:270

本文详细解析JavaScript中Array数组的常用操作方法,涵盖push、pop、unshift、shift等增删元素方法,以及forEach遍历、slice截取、splice修改、concat连接、join转换、reverse反转和sort排序等核心功能,帮助开发者掌握数组处理技巧。

文章目录

数组操作方法概述

1. push() 方法用于添加元素

  1. 该函数可向数组追加一个或多个元素,并返回更新后的数组长度
  2. 可通过方法参数传递要添加的元素
    • 新插入的元素会被自动放置于数组末尾
  3. 此函数的返回值即为数组更新后的长度值
var arr = ["孙悟空", "猪八戒", "沙和尚"];
var result = arr.push("唐僧", "蜘蛛精", "白骨精", "玉兔精");
console.log(arr);
console.log("result = " + result);

数组操作方法概述

2. pop() 方法用于删除元素

该函数移除数组最后一个元素,并返回被移除的元素值

var arr = ["孙悟空", "猪八戒", "沙和尚"];
var result = arr.pop();
console.log("result = " + result);
console.log(arr);

数组操作方法概述

3. unshift() 方法用于添加元素

  1. 该函数向数组头部插入一个或多个元素,并返回新数组长度
  2. 插入操作后,原有元素的索引值将依次递增调整
var arr = ["孙悟空", "猪八戒", "沙和尚"];
console.log(arr);
arr.unshift("牛魔王", "二郎神");
console.log(arr);

数组操作方法概述

4. shift() 方法用于删除元素

该函数移除数组第一个元素,并返回被移除的元素值

var arr = ["孙悟空", "猪八戒", "沙和尚"];
var result = arr.shift();
console.log(arr);
console.log("result = " + result);

数组操作方法概述

5. forEach() 方法用于遍历数组

1) 功能说明

  1. JavaScript 提供了此方法以遍历数组元素
  2. 此功能仅支持 IE8 及以上版本浏览器
    • IE8 及以下版本浏览器不支持此方法,若需兼容 IE8 则不应使用
    • 建议改用 for 循环进行遍历操作

2) 调用方式

  1. forEach() 函数接收一个回调函数作为参数
  2. 此类由用户定义但由系统调用的函数被称为回调函数
  3. 数组元素数量决定函数执行次数,每次执行时浏览器传入遍历到的元素
    • 通过实参形式传入数据,可定义形参以接收这些内容
  4. 浏览器会在回调函数中传递三个参数
    • 第一个参数代表当前遍历的元素值
    • 第二个参数代表当前遍历元素的索引值
    • 第三个参数代表当前正在遍历的数组对象
var arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "白骨精"];
arr.forEach(function (value, index, obj) {
  console.log(value);
});

数组操作方法概述

6. slice() 方法用于截取数组

  1. 该函数用于从数组中提取指定范围的元素
  2. 原数组保持不变,截取出的元素封装为新数组返回
  3. 参数说明:
    • 指定截取起始位置,包含该索引对应的元素
    • 指定截取结束位置,不包含该索引对应的元素

第二个参数可选,省略时截取至数组末尾;索引可为负数,表示从后向前计算

  • -1 代表倒数第一个元素
  • -2 代表倒数第二个元素
var arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "白骨精"];
var result = arr.slice(1, 4);
console.log(result);
result = arr.slice(3);
console.log(result);
result = arr.slice(1, -2);
console.log(result);

数组操作方法概述

7. splice() 方法用于删除或插入元素

  1. 该函数用于删除数组中指定位置的元素
  2. 使用 splice 会修改原数组,从原宿主中移除指定元素
    • 被删除的元素以数组形式返回
  3. 参数说明:
    • 第一个参数指定起始位置的索引
    • 第二个参数指定删除的元素数量
    • 第三个及后续参数为新增元素,将自动插入到起始索引之前
var arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "白骨精"];
var result = arr.splice(1, 0, "牛魔王", "铁扇公主", "红孩儿");
console.log(arr);
console.log(result);

数组操作方法概述

8. concat() 方法用于连接数组

  1. 该函数可合并两个或多个数组,并返回新数组
  2. 原数组不受此操作影响
var arr = ["孙悟空", "猪八戒", "沙和尚"];
var arr2 = ["白骨精", "玉兔精", "蜘蛛精"];
var arr3 = ["二郎神", "太上老君", "玉皇大帝"];
var result = arr.concat(arr2, arr3, "牛魔王", "铁扇公主");

9. join() 方法用于转换字符串

  1. 该函数将数组元素转换为一个字符串
  2. 原数组保持不变,返回转换后的字符串结果
  3. 在 join() 中可指定字符串作为参数,该字符串将作为元素连接符
    • 未指定分隔符时,默认使用逗号作为连接符
var arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧"];
var result = arr.join("@-@");

10. reverse() 方法用于反转数组

  1. 该函数用于反转数组顺序(首尾互换)
  2. 此操作直接修改原数组内容
var arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧"];
arr.reverse();
console.log(arr);

数组操作方法概述

11. sort() 方法用于排序数组

1) 基础用法

  1. 该函数用于对数组元素进行排序操作
  2. 原数组会被修改,默认按 Unicode 编码值排序
var arr = ["b", "d", "e", "a", "c"];
arr.sort();

2) 自定义排序规则

  1. 即使对纯数字数组使用 sort(),也会按 Unicode 编码排序
    • 因此直接排序纯数字数组可能产生非预期结果
  2. 可在 sort() 中传入回调函数以指定排序逻辑
  3. 回调函数需定义两个形参
    • 浏览器会使用数组元素作为实参调用回调函数
    • 具体调用顺序不确定,但保证数组中 a 在 b 之前
  4. 浏览器依据回调函数返回值决定元素顺序
    • 若返回值大于 0,则交换元素位置
    • 若返回值小于 0,则保持元素位置不变
    • 若返回值为 0,则认为两元素相等,不交换位置
  5. 排序逻辑
    • 如需升序排列,应返回 a-b
    • 如需降序排列,应返回 b-a
var arr = [5, 4, 2, 1, 3, 6, 8, 7];
arr.sort();
arr.sort(function (a, b) {
  //前边的大
  /* if(a> b){
     	return -1;
     }else if(a < b){
     	return 1;
     }else{
     	return 0;
     } */
  //升序排列
  //return a-b;
  //降序排列
  return b - a;
});
console.log(arr);

数组操作方法概述

至此关于 JavaScript Array 数组方法的详解介绍完毕,更多相关内容请查阅本站往期文章或继续浏览后续文章,感谢支持!

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章