温馨提示×

js中slice与splice的区别是什么

小亿
108
2023-08-08 05:26:51
栏目: 编程语言

在JavaScript中,slice()和splice()是两个数组方法,它们有不同的功能和用法。

  1. slice()方法:
  • slice()方法返回一个新的数组,包含从原数组中选择的元素。

  • 它接受两个参数,分别是起始索引和结束索引(可选)。起始索引包含在结果中,结束索引不包含在结果中。

  • 如果不指定结束索引,则slice()方法会选择从起始索引开始到数组末尾的所有元素。

  • 原数组不会被修改。

  • 示例:

const fruits = ['apple', 'banana', 'orange', 'mango'];
const selectedFruits = fruits.slice(1, 3);
console.log(selectedFruits); // ['banana', 'orange']
console.log(fruits); // ['apple', 'banana', 'orange', 'mango']
  1. splice()方法:
  • splice()方法用于修改原数组,可以删除、替换或插入元素。

  • 它接受三个或更多参数,第一个参数是起始索引,表示在哪里开始修改数组,第二个参数是要删除的元素数量(可选),接下来的参数是要插入到数组中的元素(可选)。

  • splice()方法会修改原数组,并返回一个包含被删除元素的新数组(如果有删除的元素)。

  • 示例:

const fruits = ['apple', 'banana', 'orange', 'mango'];
const removedFruits = fruits.splice(1, 2, 'grape', 'watermelon');
console.log(fruits); // ['apple', 'grape', 'watermelon', 'mango']
console.log(removedFruits); // ['banana', 'orange']

总结:

  • slice()方法返回一个新数组,不修改原数组;splice()方法修改原数组。

  • slice()方法接受起始索引和结束索引作为参数,返回选择的元素;splice()方法接受起始索引、删除元素数量和插入的元素作为参数,返回被删除的元素。

  • slice()方法不会改变原数组,而splice()方法会改变原数组。

0