js 数组splice跟slice

在 JavaScript 中,splice 和 slice 是数组(Array)对象的方法,用于处理数组,但它们的功能和用途有很大的不同。
1. splice

splice 方法用于 修改数组,可以添加、删除或替换数组中的元素。

语法

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

  • start: 必需。表示从数组的哪个索引开始修改。
  • deleteCount: 可选。表示要删除的元素数量。如果为 0,则不删除元素。
  • item1, item2, ...: 可选。要添加到数组的新元素。
    返回值
    splice 返回一个包含被删除元素的数组。如果没有删除任何元素,则返回一个空数组。
    示例
bash 复制代码
let fruits = ['Apple', 'Banana', 'Cherry', 'Date'];
 // 删除元素 
 let removed = fruits.splice(1, 2); 
 // 从索引 1 开始删除 2 个元素 
 console.log(fruits);
  // ['Apple', 'Date']
   console.log(removed); 
   // ['Banana', 'Cherry'] 
   // 添加元素 
   fruits.splice(1, 0, 'Blueberry', 'Coconut'); 
   // 在索引 1 处添加两个新元素 
   console.log(fruits); 
   // ['Apple', 'Blueberry', 'Coconut', 'Date'] 
   // 替换元素 
   fruits.splice(1, 1, 'Avocado'); 
   // 从索引 1 替换 1 个元素 
   console.log(fruits); 
   // ['Apple', 'Avocado', 'Coconut', 'Date']

2. slice

slice 方法用于 提取数组的片段,而不修改原始数组。它返回一个新数组,包含从原数组中提取的元素。

语法

array.slice(start, end)

  • start: 可选。表示提取的开始索引。如果省略,默认为 0。
  • end: 可选。表示提取的结束索引(不包括该索引处的元素)。如果省略,默认为数组的长度。
    返回值
    slice 返回一个新的数组,包含从原数组中提取的元素。
    示例
bash 复制代码
let fruits = ['Apple', 'Banana', 'Cherry', 'Date'];
 // 提取片段
  let citrus = fruits.slice(1, 3); 
  // 从索引 1 提取到索引 3(不包含 3) 
  console.log(citrus); 
  // ['Banana', 'Cherry'] 
  console.log(fruits); 
  // 原数组仍然是 ['Apple', 'Banana', 'Cherry', 'Date'] 
  // 使用负索引 
  let lastFruits = fruits.slice(-2); 
  // 从倒数第二个元素开始提取 console.log(lastFruits); 
  // ['Cherry', 'Date']

总结

  • splice:用于修改原数组(添加、删除或替换元素),返回被删除的元素。
  • slice:用于提取数组的片段,返回一个新的数组,不会修改原数组。
相关推荐
百锦再4 分钟前
python之路并不一马平川:带你踩坑Pandas
开发语言·python·pandas·pip·requests·tools·mircro
灏瀚星空5 分钟前
基于 Python 与 GitHub,打造个人专属本地化思维导图工具全流程方案(上)
开发语言·人工智能·经验分享·笔记·python·个人开发·visual studio
是Dream呀5 分钟前
Python从0到100(一百):基于Transformer的时序数据建模与实现详解
开发语言·python·transformer
草莓熊Lotso7 分钟前
Python 入门超详细指南:环境搭建 + 核心优势 + 应用场景(零基础友好)
运维·开发语言·人工智能·python·深度学习·学习·pycharm
*TQK*7 分钟前
Python中as 的作用
开发语言·python
维他奶糖617 分钟前
Python 实战:Boss 直聘职位信息爬虫开发全解析
开发语言·爬虫·python
颜颜yan_8 分钟前
Python中秋月圆夜:手把手实现月相可视化,用代码赏千里共婵娟
开发语言·python·可视化·中秋节
xwill*8 分钟前
python 格式化输出详解(占位符:%、format、f表达式
开发语言·pytorch·python·深度学习
yingjuxia.com8 分钟前
【python】错误SyntaxError: invalid syntax的解决方法总结
开发语言·python
say_fall10 分钟前
Python 核心语法与常用库完全指南
开发语言·python