前端 |【JavaScript】JS 删除数组中某个元素的方法有哪些?超简洁六大方法!

一、length属性

在JavaScript中,length属性用于获取数组的长度。可用于删除数组中的最后一个元素,只需将长度减1即可。

javascript 复制代码
// 创建一个数组
var a = [1, 2, 3, 4, 5];
// 使用length属性获取数组长度
console.log(a.length); // 输出:5
a.length = a.length - 1;
// a => [1,2,3,4]

二、slice属性

slice属性可用于删除数组中的第一个和最后一个元素。

javascript 复制代码
// 创建一个数组
var a = [1,2,3,4,5];
var new_a = a.slice(1); //删除数组a中第一个元素 "1"
// new_a => [2,3,4,5]
var new_b = new_a.slice(0, -1);  //删除数组new_a中最后一个元素 "5"
// new_b => [2,3,4]

三、splice属性

splice属性有4种删除方式。

1、删除数组中第一个元素

javascript 复制代码
// 创建一个数组
var a = [1,2,3,4,5];
var new_a  = a.splice(0, 1);
// a => [2,3,4,5]
// new_a => [1]

2、删除数组中某个指定元素

javascript 复制代码
var x = 2,
    a = [1,2,3,4,5];
a.splice(a.indexOf(2), 1);
// a => [1,3,4,5]

3、删除数组中指定下标的元素

javascript 复制代码
var delete_index = 2;
var a = [1,2,3,4,5];
// a => [1,2,3,4,5]
var new_a = a.splice(delete_index, 1);
// new_a => [3]
// a => [1,2,4,5]

4、删除数组中最后一个元素

javascript 复制代码
// 创建一个数组
var a = [1,2,3,4,5];
var new_a = a.splice(-1);
// a => [1,2,3,4]
// new_a => [5]

四、pop方法

JavaScript中的pop()方法用于删除数组的最后一个元素,并返回被删除的元素。

javascript 复制代码
// 创建一个数组
var a = [1,2,3,4,5];
a.pop();
// a => [1,2,3,4]

五、shift方法

JavaScript中的shift()方法用于删除数组的第一个元素,并返回被删除的元素。

javascript 复制代码
// 创建一个数组
var a = [1,2,3,4,5];
a.shift();
// a => [2,3,4,5]

六、filter方法

JavaScript中的filter()方法用于筛选数组中满足条件的元素,并返回一个新的数组。可用于删除数组中某个指定元素。

参数说明:

  • callback:用于测试数组中的每个元素的函数。返回 true 表示该元素通过测试,保留在新的数组中;返回 false 则不保留。
  • element:当前正在处理的数组元素。
  • index(可选):当前正在处理的数组元素的索引。
  • array(可选):调用 filter 方法的数组。
  • thisArg(可选):执行 callback 函数时使用的 this 值。
javascript 复制代码
// 创建一个数组
var a = [1,2,3,4,5],
    x = 2;
a = a.filter(item => item != x);
// a => [1,3,4,5]
相关推荐
晚安日记wanna6 分钟前
SSR 为什么不适合登录态从水合冲突到缓存串号
前端·react.js·面试
aixingpan9 分钟前
aixingpan.cn API开发文档:api_docs_bichart_natalvssolararc2接口指南
前端·php
无限压榨切图仔13 分钟前
一个优惠券需求改了三端,我才明白全栈不是多学一门语言
前端·后端
晚安日记wanna17 分钟前
批量请求失败只弹一个 Toast面试官想听五层
前端·面试·架构
雪落漂泊23 分钟前
C++11(上)
开发语言·c++
晚安日记wanna24 分钟前
TS const 类型参数一道面试题的四层追问
前端·面试·typescript
用户9210802628627 分钟前
前端 Vue 专栏 09:Vue Router 与前端路由
前端
春涧草茶1 小时前
慢就是快12-2三种访问权限|getter与setter|魔法方法
开发语言·python
無限進步D1 小时前
Java Web 前端 简介
java·开发语言·前端·css·html·css3·web
码士集团小青1 小时前
从落地到“半停用“:qiankun 微前端在一个 Vue 3 + Vite 项目中的完整实践与反思
前端