Skip to content

学习数组的 splice 方法

语法

js
const arr = []

arr.splice(index, deleteCount, addParam)

参数

  • index 开始索引
  • deleteCount 删除个数
  • addParam 要添加的元素

假设 index 为 0,删除个数为 0,添加元素为 99。

那么第一个元素变为 99,原先第一位元素及后面的元素往后推。

ts
import { it, expect } from 'vitest'

it('替换第一个元素为 123', () => {
  const arr = [1, 2, 3]
  arr.splice(0, 1, 123)
  expect(arr).toEqual([123, 2, 3])
})

it('在数组首位插入 456', () => {
  const arr = [1, 2, 3]
  arr.splice(0, 0, 456)
  expect(arr).toEqual([456, 1, 2, 3])
})

it('在数组末尾推入 789', () => {
  const arr = [1, 2, 3]
  arr.splice(arr.length, 0, 789)
  expect(arr).toEqual([1,2,3,789])
})

it('1 和 2,2 和 3 之间插入 0', () => {
  const arr = [1, 2, 3]
  const index = 1
  arr.splice(index, 0, 0)
  arr.splice(index + 2, 0, 0)
  expect(arr).toEqual([1,0,2,0,3])
})

返回值

一个包含了删除的元素的数组。

如果只移除一个元素,则返回一个元素的数组。

如果没有删除任何元素,则返回一个空数组。

Released under the MIT License.