slice()splice() 都是 JavaScript 中用于操作数组的方法,但它们有着不同的作用。

slice() 方法:

  • slice() 方法用于创建一个新的数组,包含原始数组中的指定部分。
  • 它不会修改原始数组,而是返回一个从开始索引到结束索引(不包括结束索引)的新数组。
  • 语法:array.slice(start, end),其中 start 是开始提取的起始位置,end 是提取的结束位置(不包括)。
  • 如果不提供 end 参数,则提取从 start 位置到数组末尾的所有元素。
  • 示例:
const array = [1, 2, 3, 4, 5];
const newArray = array.slice(1, 4);
console.log(newArray); // 输出:[2, 3, 4]
console.log(array); // 输出:[1, 2, 3, 4, 5],原数组未改变

splice() 方法:

  • splice() 方法用于从数组中添加或删除元素。
  • 它会修改原始数组,并返回被删除元素组成的新数组(如果有删除的话)。
  • 语法:array.splice(start, deleteCount, item1, item2, ...),其中 start 是开始修改的位置,deleteCount 是要删除的元素数量,可选的 item1, item2, ... 是要添加到数组的元素。
  • 示例:
const array = [1, 2, 3, 4, 5];
const removed = array.splice(1, 2, 'a', 'b');
console.log(removed); // 输出:[2, 3]
console.log(array); // 输出:[1, 'a', 'b', 4, 5],原数组已修改

总之,slice() 返回一个新的数组,不修改原始数组,而 splice() 修改原始数组,并返回被删除的元素组成的新数组(如果有删除的话)。两者用途不同,需要根据需求来选择使用。

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.