JavaScript-数组的增删改查

数组的操作一共有四种:

  • 查询数组数据
  • 修改数组中元素的值
  • 数组添加新的数据
  • 删除数组中的元素

数组的初始化

有些编程语言的数组初始化是用{}包着的,而JS的数组初始化用\[\]

javascript 复制代码
let num=[2,6,1,77,52,25,7];

数组的查询

想要具体查询数组中的某个元素

可以用数组名numi表示查询数组num中的第i+1个变量,数组的下标是从0开始的

javascript 复制代码
   let num=[2,6,1,77,52,25,7];
   console.log(`${num[3]}`);

比如我要查询数组的第4个元素

查询数组的全部元素可以直接使用数组名

javascript 复制代码
   let num=[2,6,1,77,52,25,7];
   console.log(`${num}`);

修改数据

对数据进行修改,可以通过重新赋值或者用+拼接字符串的方式

我们想将"惠普"改为"惠普-暗影精灵"

可以通过重新赋值

javascript 复制代码
   let arr=["惠普","联想","外星人","神舟","华硕"];
   arr[0]="惠普-暗影精灵";
   console.log(`${arr}`);

也可以拼接字符串

javascript 复制代码
  let arr=["惠普","联想","外星人","神舟","华硕"];
   arr[0]=arr[0]+"-暗影精灵";
   console.log(`${arr}`);

新增数据

向数组的结尾添加元素

将一个或多个元素添加到数组的末尾,并返回该数组的新长度

语法:arr.push(元素1,元素2,....,元素n)

向数组的末尾添加6,7,8

javascript 复制代码
 let arr=[1,2,3,4,5];
   arr.push(6,7,8);
   console.log(`${arr}`);

向数组的开头添加元素

将1个或多个元素添加到数组的开头

语法:arr.unshift(元素1,元素2,....,元素n)

javascript 复制代码
  let arr=[4,5];
   arr.unshift(1,2,3);
   console.log(`${arr}`);

向数组的开头添加1,2,3

数组的长度

查询数组的元素个数

语法:arr.length

javascript 复制代码
  let arr=[1,2,3,4,5];
   console.log(`${arr.length}`);
   arr.push(6,7,8);
   console.log(`${arr.length}`);

我们发现新增数据后数组的长度在变化

删除数据

删除最后一个元素

删除数组中最后一个元素

语法:arr.pop()

javascript 复制代码
  let arr=[2,0,6,1,77,0,52,0,25,7];
   arr.pop();
   console.log(arr);

用这个操作会删除掉7这个元素,并返回新的数组长度

删除第一个元素

删除数组中第一个元素

语法:arr.shift()

javascript 复制代码
   let arr=[2,0,6,1,77,0,52,0,25,7];
   arr.shift();
   console.log(arr);

删除指定元素

指定一个开始位置,并从这个位置起删除几个元素,起始位置是从下标0开始

语法:arr.splice(起始位置,删除几个元素)

比如我们要删除0之间的所有元素包括0

javascript 复制代码
let arr=[2,0,6,1,77,4,52,0,25,7];
   arr.splice(1,7);
   console.log(arr);
相关推荐
无限码力1 小时前
8.26华为OD机试真题 新系统【字符串回文判断】
算法·华为od·华为od机考·华为od机试·华为od上机考试真题·华为od最新机试真题题解·华为od机试真题题库
玖玥拾3 小时前
LeetCode 125 验证回文串
算法·leetcode
Asize10 小时前
146. LRU 缓存
算法
Asize10 小时前
543. 二叉树的直径
算法
lemon_sjdk10 小时前
ObjectProperty
java·开发语言·算法
Zentceh10 小时前
AI-ISP在夜视机芯中的应用:从传统ISP到PixelClean全彩夜视的进化
人工智能·科技·算法·计算机视觉·车载系统·视频·智能硬件
xier_ran11 小时前
【infra之路】AWQ 详解:激活感知权重保护,让 W4A16 量化精度超越 GPTQ
线性代数·算法·机器学习·量化·infra
亦皓ai11 小时前
AI时代后端工程(二):AI把代码写得越来越快,我却越来越不敢让它直接开工了
人工智能·算法·机器学习·搜索引擎·transformer
玖玥拾12 小时前
LeetCode 392 判断子序列
笔记·算法·leetcode
重生之后端学习14 小时前
239. 滑动窗口最大值[困难]✅
java·数据结构·算法·leetcode·职场和发展