JavaScript splice() 方法

1. JavaScript splice() 方法

1.1. 定义和用法

splice() 方法用于添加或删除数组中的元素。

注意:这种方法会改变原始数组。

返回值:如果删除一个元素,则返回一个元素的数组。 如果未删除任何元素,则返回空数组。

1.2. 语法

javascript 复制代码
array.splice(index,howmany,item1,.....,itemX)

1.3. 语法

参数 描述
电脑 $1600
index 必需。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
howmany 可选。规定应该删除多少元素。必须是数字,但可以是 "0"。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
item1, ..., itemX 可选。要添加到数组的新元素

1.4. 返回值

Type 描述
Array 如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组

1.5. 示例

处理数组的方法很多,javascript 的splice() 算是最强大的了,它可以用于插入、删除或替换数组的元素。

1.5.1. 删除

用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)

javascript 复制代码
var myFish = ["angel", "clown", "drum", "mandarin", "surgeon"];
console.log("原始数据:",JSON.stringify(myFish))
var removed = myFish.splice(3, 1);
console.log("删除数据:",JSON.stringify(removed))
console.log("删除后数据:",JSON.stringify(myFish))

1.5.2. 插入

向数组指定位置插入任意项元素。三个参数,第一个参数(其实位置),第二个参数(0),第三个参数(插入的项)

javascript 复制代码
var myFish = ["angel", "clown", "mandarin", "surgeon"];
console.log("原始数据:", JSON.stringify(myFish))
var insert = myFish.splice(2, 0, "drum");
console.log("插入数据:", JSON.stringify(insert))
console.log("插入后数据:", JSON.stringify(myFish))

1.5.3. 替换

向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数。第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)

javascript 复制代码
var myFish = ["angel", "clown", "drum", "surgeon"];
console.log("原始数据:", JSON.stringify(myFish))
var replace = myFish.splice(2, 1, 'trumpet');
console.log("替换数据:", JSON.stringify(replace))
console.log("替换后数据:", JSON.stringify(myFish))
相关推荐
故事和你9118 分钟前
洛谷-数据结构1-1-线性表1
开发语言·数据结构·c++·算法·leetcode·动态规划·图论
小李子呢021139 分钟前
前端八股Vue---Vue2和Vue3的区别,set up的用法
前端·javascript·vue.js
邂逅星河浪漫1 小时前
【银行内网开发-管理端】Vue管理端+Auth后台开发+Nginx配置+Linux部署(详细解析)
linux·javascript·css·vue.js·nginx·html·前后端联调
techdashen1 小时前
Rust项目公开征测:Cargo 构建目录新布局方案
开发语言·后端·rust
星空椰1 小时前
JavaScript 进阶基础:函数、作用域与常用技巧总结
开发语言·前端·javascript
奔跑的呱呱牛1 小时前
@giszhc/vue-page-motion:Vue3 路由动画怎么做才“丝滑”?(附在线示例)
前端·javascript·vue.js
忒可君1 小时前
C# winform 自制分页功能
android·开发语言·c#
Rust研习社2 小时前
Rust 智能指针 Cell 与 RefCell 的内部可变性
开发语言·后端·rust
leaves falling2 小时前
C++模板进阶
开发语言·c++
坐吃山猪3 小时前
Python27_协程游戏理解
开发语言·python·游戏