前端数组

一、核心操作方法

  1. 增删元素

    • push():尾部添加元素,返回新长度 

    • pop():删除并返回最后一个元素 

    • unshift():头部添加元素,返回新长度 

    • shift():删除并返回第一个元素 

    • splice():通过删除/替换元素修改原数组,支持插入新元素 

  2. 合并与分割

    • concat():合并数组生成新数组,不改变原数组 

    • slice():返回指定索引区间的浅拷贝数组 


二、遍历与转换方法

  1. 遍历处理

    • map():遍历并返回新数组(如提取特定字段、格式化数据)

    • filter():筛选符合条件元素生成新数组 

    • forEach():简单遍历元素,无返回值 

    • find():返回首个符合条件的元素值 

  2. 聚合运算

    • reduce():累积计算数组元素(如求和、统计)

    • join():将元素拼接为字符串(可选分隔符)


三、其他实用方法

  • indexOf() / includes():查找元素位置或存在性 

  • sort():排序数组(需注意 Unicode 比较问题)

  • copyWithin():复制数组内元素覆盖指定位置 

  • Array.from():将类数组对象(如 arguments)转为数组 


四、类数组对象与转换

类数组对象(如 NodeList、函数 arguments)特点:

  • 拥有 length 属性和数字索引访问 

  • 无法直接使用数组方法

  • 转换方法:Array.from() 或 [...arrayLike](扩展运算符)


五、使用注意事项

  • 性能敏感场景‌:避免在大数据量时频繁使用 spliceunshift 等触发数组重排的方法 

  • 深浅拷贝‌:sliceconcat 等为浅拷贝,嵌套对象需使用深拷贝策略 

  • 链式调用‌:支持 map().filter().reduce() 等链式操作,提升代码简洁性 

// 示例:map 格式化数据const tableData = [  { id: 1, name: 'Alice' },  { id: 2, name: 'Bob' }];const idArr = tableData.map(v => v.id); // [1, 2]


标签:

相关文章

沟通的模型

7C模型:这是一种在商业沟通中常见的模型,旨在确保信息在传递过程中清晰、简明、准确、一致、可信、可理解和有说服力。沟通的五个W和一个H:何人(Who)何事(What)何地(Where)何时(When)...

格林童话-王子与公主的故事

 在远古时代,魔法是一个普遍存在的事物,有很多人都被人施过魔法。  在希望还有用处的时代,一位王子被一位老巫婆施了法,困在森林中的一个大铁炉里。许多年过去了,没有人能救出他。  一天,一位公主来到了大...

前端对象-object

前端对象是JavaScript中用于表示数据和功能集合的核心概念,其设计遵循“万物皆对象”的抽象原则。以下从多个维度进行说明:一、对象定义与特征‌本质‌对象是由键值对构成的无序数据集合,键名与对应的值...

Dart 语言

一、Dart 语言基础与开发环境1. Dart 语言概述Dart 是由 Google 开发的客户端优化编程语言,具备以下核心特性:‌跨平台支持‌:可编译为原生代码或 JavaScript,适用于移动、...

前端错误集合

⚠️ ‌一、核心运行时错误类型‌‌SyntaxError(语法错误)‌‌原因‌:代码不符合 JavaScript 语法规则(如变量命名不合规、括号缺失等)‌案例‌:var1a = 10;(数字开头的变...

程序测试方法

一、按测试技术分类‌黑盒测试‌特点:仅验证输入输出是否符合需求,不关注内部代码实现常用技术:等价类划分、边界值分析、决策表测试等示例:测试用户年龄输入框时,需覆盖有效值(18-60岁)和无效值(如17...