slice 和 splice 的区别

339 阅读1分钟

slice 和 splice 的区别

slice:

  • 不会影响返回原数组,

  • 会返回一个新数组

  • slice (开始下标[包含自己], 结束的下标[不包含自己])包头不包尾

let arr = [1, 2, 3, 4, 5, 6]
arr.slice(1) //  [2, 3, 4, 5, 6]

arr.slice(2) // [3, 4, 5, 6]

console.log(arr) // [1, 2, 3, 4, 5, 6]

splice:

  • 会影响原数组
  • 会返回一个新数组., 原数组是被截取之后的数组, 和新数组结合形成一个完整的数组
  • splice(开始的下标[包含自己], 截取的个数长度) 从开始下标截取几位
  • splice(2)一个值, 从索引开始, 截取之后的全部数据
// 删元素
let arr = [1, 2, 3, 4, 5, 6]
arr.splice(1) // [2, 3, 4, 5, 6]
console.log(arr) // [1]

// 新增元素
arr.splice(1,0,9)
console.log(arr) // [1, 9]