JavaScript基础-数组操作:增删改查

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
容器镜像服务 ACR,镜像仓库100个 不限时长
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 【6月更文挑战第11天】本文介绍了JavaScript数组的增删改查操作,包括查询(索引访问、indexOf、lastIndexOf、includes)、修改(直接赋值、splice)、添加(push、unshift、splice)和删除(pop、shift、splice)。同时,文章列举了三个易错点:数组越界、splice参数理解不清及修改原数组与返回值混淆,并提供了相应的避免策略。通过代码示例展示了各种操作的用法,强调理解方法特性和实践的重要性,以提升数组操作效率。

数组作为JavaScript中最常用的数据结构之一,其增删改查操作是日常开发中的基础技能。本文将深入浅出地介绍数组的常见操作方法,分析在使用过程中遇到的易错点,并提供代码示例及避免策略,助你高效、准确地操作数组。
image.png

一、数组的增删改查方法

1. 查询(Read)

  • 索引访问:直接通过下标获取元素,如arr[0]
  • indexOf/lastIndexOf:查找元素首次或最后一次出现的位置。
  • includes:判断数组是否包含某元素。

2. 修改(Update)

  • 直接赋值:通过索引直接修改元素,如arr[0] = 'new value'
  • splice:多功能方法,可用于替换、删除和插入元素。

3. 添加(Add)

  • push:末尾添加一个或多个元素。
  • unshift:开头添加一个或多个元素。
  • splice:可在指定位置插入元素。

4. 删除(Delete)

  • pop:移除并返回数组最后一个元素。
  • shift:移除并返回数组第一个元素。
  • splice:通过指定起始索引和删除数量来移除元素。

二、常见问题与易错点

易错点1:数组越界

  • 问题:在访问或修改数组元素时,索引超出了数组的实际范围。
  • 避免方法:在操作前检查索引合法性,使用数组的length属性确保索引不越界。

易错点2:splice方法参数理解不清

  • 问题splice方法的参数较为复杂,容易混淆删除元素的数量与插入元素的位置。
  • 避免方法:明确splice(index, deleteCount[, item1[, ...[, itemN]]])的参数意义,特别是deleteCount表示要移除的元素数量,而非索引位置。

易错点3:修改原数组与返回值混淆

  • 问题:部分数组方法(如splicesort)会直接修改原数组,而有些(如concatslice)则返回新数组。
  • 避免方法:熟悉每个方法的副作用,明确是原地修改还是返回新数组,根据需求选择合适的方法。

三、代码示例与实践

查询示例

let fruits = ['apple', 'banana', 'cherry'];
console.log(fruits.includes('banana')); // true
console.log(fruits.indexOf('orange')); // -1

修改示例

fruits.splice(1, 1, 'pear'); // 替换'banana'为'pear'
console.log(fruits); // 输出 ['apple', 'pear', 'cherry']

添加示例

fruits.push('grape'); // 末尾添加
console.log(fruits); // 输出 ['apple', 'pear', 'cherry', 'grape']
fruits.unshift('mango'); // 开头添加
console.log(fruits); // 输出 ['mango', 'apple', 'pear', 'cherry', 'grape']

删除示例

fruits.pop(); // 移除最后一个元素
console.log(fruits); // 输出 ['mango', 'apple', 'pear', 'cherry']
fruits.shift(); // 移除第一个元素
console.log(fruits); // 输出 ['apple', 'pear', 'cherry']

四、结语

掌握数组的增删改查操作是JavaScript编程的基础,也是进阶的关键。通过理解每种方法的用途和潜在陷阱,结合实际代码练习,你将能够更加高效地处理数组相关的任务。记住,良好的代码习惯,如在操作前进行边界检查,以及对方法返回值的正确理解,都是避免常见错误的有效策略。希望本文能帮助你在JavaScript数组操作的道路上更进一步

目录
相关文章
|
23天前
|
JavaScript
js 解析 byte数组 成字符串
js 解析 byte数组 成字符串
|
2月前
|
前端开发 JavaScript 开发者
【前端开发者的福音】彻底改变你编码习惯的神奇数组迭代技巧——从基础到进阶,解锁 JavaScript 数组迭代的N种姿势!
【8月更文挑战第23天】在Web前端开发中,数组是JavaScript中最常用的数据结构之一,掌握高效的数组迭代方法至关重要。本文详细介绍了多种数组迭代技巧:从基础的`for`循环到ES6的`for...of`循环,再到高阶方法如`forEach`、`map`、`filter`、`reduce`及`some`/`every`等。这些方法不仅能提高代码的可读性和维护性,还能有效优化程序性能。通过具体的示例代码,帮助开发者更好地理解和运用这些迭代技术。
26 0
|
1天前
|
存储 JavaScript 前端开发
JavaScript Array(数组) 对象
JavaScript Array(数组) 对象
11 3
|
1月前
|
JavaScript 前端开发
JavaScript基础知识-数组的遍历
关于JavaScript数组遍历基础知识的文章。
30 2
JavaScript基础知识-数组的遍历
|
1月前
|
JavaScript 前端开发
JavaScript基础知识-数组的练习
关于JavaScript基础知识中数组操作的练习,主要介绍了如何从一个包含Person对象的数组中过滤出成年人(年龄达到18岁及以上)并将他们放入一个新的数组中。
28 1
JavaScript基础知识-数组的练习
|
1月前
|
JavaScript 前端开发
JavaScript基础知识-数组的常用方法
关于JavaScript基础知识-数组的常用方法。
18 1
JavaScript基础知识-数组的常用方法
|
1月前
|
JavaScript 前端开发 索引
JavaScript基础知识-数组基于索引访问
关于JavaScript数组基于索引访问的基础知识介绍。
16 1
JavaScript基础知识-数组基于索引访问
|
1月前
|
JavaScript 前端开发
JavaScript基础知识-数组的定义方式
本文介绍了JavaScript中数组的多种定义方式。
17 1
JavaScript基础知识-数组的定义方式
|
18天前
|
JavaScript 前端开发
js删除数组最后一个元素
js删除数组最后一个元素
|
17天前
|
JavaScript 前端开发 索引