slice()函数与splice()函数

JavaScript高级程序设计P151

1.slice()函数

  • slice()函数用于重新创建一个包含原有数组中一个或多个元素的新数组,(将原数组赋值一份进行修改操作,使用slice()函数不会对原数组造成影响,slice()函数返回的是复制的另一份数组的修改结果)
  • slice()函数操作不影响原数组
  • slice()函数最多接收2个参数,1.开始索引,2.结束索引,如果只有一个参数,slice()会返回从该索引位置到数组末尾的所有元素
  • slice()函数接收两个参数时,左闭右开,返回结果不包含结束索引对应的元素
  • ??如果结束索引是数组长度+2返回的结果会包含数组的末尾元素吗??
    • 会,只要大于最后一位元素的索引值,都会返回全部元素
    var arr = [1,2,3,4,5]
    console.log(arr.slice(0,4))//[ 1, 2, 3, 4 ]
    console.log(arr.slice(0,5))//[ 1, 2, 3, 4, 5 ]
    console.log(arr.slice(0,6))//[ 1, 2, 3, 4, 5 ]
    console.log(arr.slice(0,7))//[ 1, 2, 3, 4, 5 ]
    
  • slice()函数的参数如果有负值,那么就以数组的长度加上这个负值的结果确定位置

2.splice()函数

  • splice()函数用于在数组中插入元素
  • splice()函数有三种用法
    • 删除 需要传入两个参数,1.删除的起始位置,2.要删除的元素的数量
    • 插入 需要传入3个参数,1.起始位置,2.0(要删除的元素数量),3.要插入的元素第三个参数之后还可以传入任意多个需要插入的元素
    • 替换 在删除元素的同时可以在指定位置插入新元素,需要传入3个参数,1.开始位置2.要删除的元素的数量3.要替换的内容
    • splice()函数直接在原数组上进行修改
    • splice()函数会返回一个包含从数组中被删除的元素的数组,如果没有删除元素则返回一个空数组

58同城2021校招笔试-前端-1

console.log([1,2,3,4,5].splice(1,2,3,4,5)); //[2,3] splice()函数返回的被删除的元素的数组
console.log([1,2,3,4,5].slice(1,2,3,4,5)); //[2] slice()函数返回一份修改后的函数,左闭右开,输出数组[2]


var arr = [1,2,3,4,5]
console.log(arr.splice(1,2,3,4,5))// [2,3]
console.log(arr)//[1,3,4,5,4,5] 在原数组上进行修改,从第二个元素开始删除两个,插入3,4,5
posted @ 2023-02-28 14:40  bbkasd  阅读(102)  评论(0编辑  收藏  举报