当前位置:首页 > JavaScript

js数组 实现

2026-03-02 08:38:04JavaScript

js数组 实现

数组的创建与初始化

在JavaScript中,数组可以通过多种方式创建:

js数组 实现

  • 字面量方式:直接使用方括号 [] 定义数组。
    const arr1 = [1, 2, 3]; // 包含数字的数组
    const arr2 = ['a', 'b', 'c']; // 包含字符串的数组
  • 构造函数方式:通过 new Array() 创建。
    const arr3 = new Array(1, 2, 3); // 等价于 [1, 2, 3]
    const arr4 = new Array(3); // 创建长度为3的空数组(元素为empty)

数组的常用方法

JavaScript数组提供丰富的内置方法,以下是一些核心操作:

添加/删除元素

  • push():向数组末尾添加元素,返回新长度。
    const arr = [1, 2];
    arr.push(3); // arr变为 [1, 2, 3]
  • pop():删除并返回数组的最后一个元素。
    const last = arr.pop(); // last = 3,arr变为 [1, 2]
  • unshift():向数组开头添加元素。
    arr.unshift(0); // arr变为 [0, 1, 2]
  • shift():删除并返回数组的第一个元素。
    const first = arr.shift(); // first = 0,arr变为 [1, 2]

遍历与转换

  • forEach():遍历数组元素。
    [1, 2, 3].forEach(item => console.log(item * 2)); // 输出 2, 4, 6
  • map():返回新数组,每个元素经过函数处理。
    const doubled = [1, 2, 3].map(x => x * 2); // doubled = [2, 4, 6]
  • filter():返回满足条件的新数组。
    const evens = [1, 2, 3].filter(x => x % 2 === 0); // evens = [2]

查找与判断

  • includes():检查数组是否包含某值。
    [1, 2, 3].includes(2); // true
  • find():返回第一个满足条件的元素。
    const found = [1, 2, 3].find(x => x > 1); // found = 2
  • some()/every():检查是否有任意/所有元素满足条件。
    [1, 2, 3].some(x => x > 2); // true
    [1, 2, 3].every(x => x > 0); // true

数组的高级操作

合并与拆分

  • concat():合并数组,返回新数组。
    const merged = [1, 2].concat([3, 4]); // merged = [1, 2, 3, 4]
  • join():将数组元素拼接为字符串。
    [1, 2, 3].join('-'); // 返回 "1-2-3"

排序与反转

  • sort():按默认或自定义规则排序(原地修改)。
    [3, 1, 2].sort(); // [1, 2, 3]
    [3, 1, 2].sort((a, b) => b - a); // 降序 [3, 2, 1]
  • reverse():反转数组顺序。
    [1, 2, 3].reverse(); // [3, 2, 1]

其他实用方法

  • reduce():累计计算数组元素。
    const sum = [1, 2, 3].reduce((acc, val) => acc + val, 0); // sum = 6
  • Array.from():将类数组对象转为数组。
    Array.from('abc'); // ['a', 'b', 'c']

注意事项

  • 空位处理:使用 new Array(3) 创建的数组包含空位(empty),部分方法如 map() 会跳过空位。
  • 浅拷贝slice() 或展开运算符 [...arr] 可实现浅拷贝。
    const copy = [...[1, 2, 3]]; // copy = [1, 2, 3]

标签: 数组js
分享给朋友:

相关文章

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

jquery数组

jquery数组

jQuery 数组操作 jQuery 提供了多种方法来操作数组或类数组对象(如 jQuery 对象集合)。以下是常见的数组操作方法: 遍历数组 使用 $.each() 方法可以遍历数组或对象: v…

js实现交换

js实现交换

交换变量的方法 在JavaScript中,交换两个变量的值有多种方法。以下是常见的几种实现方式: 使用临时变量 通过引入一个临时变量来存储其中一个变量的值,实现交换: let a = 1; le…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数: fun…

js实现路由

js实现路由

js实现路由的方法 在JavaScript中实现路由功能可以通过多种方式完成,以下是几种常见的方法: 使用原生JavaScript实现路由 通过监听window.onhashchange事件来实现基…

js实现上传文件

js实现上传文件

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。 <input type="file"…