js中splice和slice的用法和区别

splice和slice的用法和区别你get了吗

目录

1.splice

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


splice(第一个值为从何处开始,第二个值为删除几个,第三个为插入内容)

  • 第一个值为index下标,从0开始,删除数组内的第几个元素

  • 第二个值为删除几个元素,从第一个值定义的下标位置开始

  • 第三个为插入内容

  • 有三个参数

  • 如果没有要删除的元素,第二个位置为0就OK啦

  • 原始数组会变,长度也会变

  • 截取元素的话是闭区间,start end都会被截取到

  • 返回增加或删除的值

1.插入元素

let arr = ["a","c","d"];
arr.splice(1,0,"b")
console.log(arr)


结果

(4) ['a', 'b', 'c', 'd']
0: "a"
1: "b"
2: "c"
3: "d"
length: 4


2. 截取元素,前后都是闭区间

let arr = ["a", "b", "c", "d", "e"];
let arr1 = arr.splice(2, 3);
console.log(arr1);
console.log(arr)

结果:

3) ['c', 'd', 'e']
0: "c"
1: "d"
2: "e"
length: 3

(2) ['a', 'b']
0: "a"
1: "b"
length: 2

原数组发生变化

2.slice

截取一段数组

slice(start,end)

  • 从start开始到end,但不包括end 后面是开区间
  • 原始数组不会变
  • 有2个参数
  • 返回截取的数组片段


1.

let arr = ["a", "b", "c", "d", "e"];
let arr1 = arr.slice(2, 4);
console.log(arr1);
console.log(arr)
  • 结果:
Array(2)
0: "c"
1: "d"
length: 2

Array(5)
0: "a"
1: "b"
2: "c"
3: "d"
4: "e"
length: 5

说明slice不会改变原始数组

猜你喜欢

转载自blog.csdn.net/m0_62159662/article/details/126970193
今日推荐