前端 |【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]
相关推荐
沪飘大军11 分钟前
ll-llm:一个零依赖、可插拔的 OpenAI 兼容 LLM 代理
javascript
IT笔记1 小时前
【Rust】Rust Match 模式匹配详解
java·开发语言·rust
kyriewen1 小时前
我扒了 GPT-5.6 的全部编程跑分——有一项 OpenAI 没敢放出来
前端·gpt·ai编程
逝水无殇1 小时前
C# 运算符重载详解
开发语言·后端·c#
前端H2 小时前
微前端 v3 架构升级:从加载隔离到状态协同
前端·架构·状态模式
TPBoreas2 小时前
配置信息防泄露方案:.env 环境隔离详解(dotenv-java)
java·开发语言
山河木马2 小时前
GPU自动处理专题3-NDC怎么映射成屏幕像素坐标(视口变换)
javascript·webgl·图形学
敲代码的嘎仔2 小时前
实习日志day6--实习日志day6--title命名规范化&businessType纠正&补充缺失的@Log注解&报警与通信模块补充&产出阶段总结文档
java·开发语言·人工智能·git·python·实习·大二
江华森2 小时前
Python 实现高德地图找房(一):环境搭建与数据爬虫
开发语言·爬虫·python
杜子不疼.2 小时前
【Qt初识】信号槽(三):机制意义、断开连接与 Lambda 表达式
开发语言·数据库·qt