本文详细解析JavaScript中splice方法的语法与参数,重点阐述正负索引的计算逻辑。通过多个代码示例,演示仅删除、指定数量删除以及添加新元素的不同场景,帮助开发者准确掌握数组元素的增删改操作。
语法
array.splice(index,howmany,item1,…,itemX)
参数说明
| 参数 | 描述 |
|---|---|
| index | 必需。规定从何处添加/删除元素。 该参数是开始插入和(或)删除的数组元素的下标,必须是数字。 |
| howmany | 可选。规定应该删除多少元素。必须是数字,但可以是 “0”。 如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。 |
| item1,…,itemX | 可选。要添加到数组的新元素 |
返回值说明
| Type | 描述 |
|---|---|
| Array | 如果从arrayObject中删除了元素,则返回的是含有被删除的元素的数组。 |
下标问题
第一个参数index代表数组的下标。由于index为整数,涵盖正数、负数和0,因此需要理解清楚正数的时候下标是怎么排的,负数的时候下标是怎么排的,这样在编写代码时能避免混淆。
网络上缺乏关于splice索引机制的详细说明,因此通过实践研究得出结论。
下标排序方式如下:

实战
splice(index)
从index位置开始,删除该位置及之后的所有元素(包含第index个元素)。
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(1);
console.log('操作后数组:', array)
console.log('变动内容', splice)
有图有真相

splice(index,howmany)
从index位置开始删除元素,howmany指定删除的个数。当howmany小于或等于0时,不执行任何删除操作。
示例一(howmany>0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(1, 2);
console.log('操作后数组:', array)
console.log('变动内容', splice)
有图有真相:

示例二(howmany ≤ 0)
howmany≤0就是不删除howmany≤0就是不删除howmany≤0就是不删除
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(1, 0);
console.log('操作后数组:', array)
console.log('变动内容', splice)

splice(index,howmany,item1,…,itemX)
howmany ≤ 0
howmany≤0就是不删除howmany≤0就是不删除howmany≤0就是不删除在index位置按顺序依次添加item1,…,itemX
示例一(index ≥ 0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(1, 0, 'Grape', 'Pear');
console.log('操作后数组:', array)
console.log('变动内容', splice)
有图有真相

示例二(index<0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(-1, 0, 'Grape', 'Pear');
console.log('操作后数组:', array)
console.log('变动内容', splice)
有图有真相

howmany>0
先从index位置(包含index)开始删除howmany个元素,然后在index位置按顺序依次添加item1,…,itemX
示例一(index ≥ 0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(1, 1, 'Grape', 'Pear');
console.log('操作后数组:', array)
console.log('变动内容', splice)
有图有真相(蓝框标出的是添加的元素,橙框标出的是删除的元素)

示例二(index<0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原数组:', array)
let splice = array.splice(-2, 2, 'Grape', 'Pear');
console.log('操作后数组:', array)
console.log('变动内容', splice)
有图有真相(蓝框标出的是添加的元素,橙框标出的是删除的元素)

到此这篇关于JS中splice添加或删除数组元素的文章就介绍到这了,更多相关JS splice添加删除数组元素内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!