javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JavaScript .splice()

详解JavaScript中.splice()的用法

作者:摇滚侠

Array.prototype.splice()是JavaScript中用于在数组的指定位置添加或删除元素的方法,同时直接修改原数组,本文就来详细的介绍一下.splice()的用法小结,感兴趣的可以了解一下

JavaScript Array splice() 方法详解

Array.prototype.splice() 是 JavaScript 数组的核心方法,用于在指定位置添加/删除元素,并返回被删除的元素,同时直接修改原数组。其语法为:

array.splice(startIndex, deleteCount, item1, item2, ...)

参数说明:

使用示例

1. 删除元素

let fruits = ['🍎', '🍌', '🍇', '🍊'];
let removed = fruits.splice(1, 2);  // 从索引1开始删除2个元素

console.log(fruits);  // 输出: ['🍎', '🍊'] (原数组被修改)
console.log(removed); // 输出: ['🍌', '🍇'] (返回被删除元素)

2. 添加元素

let colors = ['red', 'green', 'blue'];
colors.splice(1, 0, 'yellow', 'purple'); // 在索引1处添加元素

console.log(colors); 
// 输出: ['red', 'yellow', 'purple', 'green', 'blue']

3. 替换元素

let numbers = [10, 20, 30, 40];
let replaced = numbers.splice(2, 1, 99); // 将索引2的元素替换为99

console.log(numbers);  // 输出: [10, 20, 99, 40]
console.log(replaced); // 输出: [30] (被替换的元素)

4. 删除末尾元素

let arr = [1, 2, 3, 4, 5];
arr.splice(-2, 1); // 倒数第2位开始删除1个元素

console.log(arr); // 输出: [1, 2, 3, 5]

关键特性

  1. 修改原数组:与 slice() 不同,splice() 直接改变原数组
  2. 负索引支持startIndex 可为负数(从末尾倒数)
  3. 返回被删除元素:始终返回数组(无删除时返回空数组)
  4. 高效操作:适合需要同时添加/删除的场景

⚠️ 注意:当 deleteCount 大于剩余元素数时,会删除从起始位置到末尾的所有元素。

与 slice() 对比

方法

修改原数组

返回内容

主要用途

splice()

被删除的元素

添加/删除元素

slice()

新数组(子数组)

提取子数组

// 示例对比
let a = [1,2,3];
a.splice(0,1);    // 返回 [1], a变为[2,3]
let b = [1,2,3];
b.slice(0,1);     // 返回 [1], b仍为[1,2,3]

到此这篇关于详解JavaScript中.splice()的用法的文章就介绍到这了,更多相关JavaScript .splice()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文