slice()方法和splice()方法

  slice返回由start和end决定的一个浅拷贝的新数组,原数组不会改变。

有两个参数:

  • start,起始索引,从该索引提取原数组元素,如果是负数,则从末尾开始;如果省略start,则默认是数组的0下标开始
  • end,结束索引,在该索引结束提取原数组元素,如果end被省略,slice会一直到末尾;如果end大于数组的长度,也会提取到数组末尾。
//从带有索引号为 2 的 <p> 元素开始选中 <p> 元素:
$("p").slice(2)

//截取字符串Str下标0-3的内容    $(selector).slice(start,stop)
Str.slice(0,3) 

splice会改变原数组,他通过删除或者替换现有元素或者原地添加新的元素来修改数组,并且以数组形式返回被修改的内容。

有三个参数:

  • start,指定修改的开始位置,如果超出数组的长度,则从数组末尾开始添加;如果是负值,从数组末尾开始第几位;如果负数也大于数组的长度,则开始位置为0
  • deleteCount 可选参数,表述要移除的数组元素的个数。
  • item1,item2,可选,表示要添加进数组的元素。 
var nums = [1,2,3]
// 将2换成4
nums.splice(1,1,4)  // 从数组下标1开始,操作1个元素,把它替换成4
console.log(nums)  // [1,4,3]
// 删除4
nums.splice(1,1) // 从数组下标1开始,操作1个,不替换
console.log(nums) // [1,3]

// 值得注意的是修改了原来的数组
  • splice改变原数组,slice不改变原数组。
  • splice除了可以删除之外,还可以插入。
  • splice可传入3个参数,slice接受2个参数。

猜你喜欢

转载自blog.csdn.net/p_s_p/article/details/129400362