JavaScript splice() 函数


今天遇到一个JavaScript里array的函数splice,构造非常奇特
W3Cschool中有如下介绍,不在赘述参数内容:
在这里插入图片描述

可以看到,其中的参数第一个是操作的数组下标index,而第二个是删除个数,之后的可选参数是增加内容,第一次看到让人疑惑的是,这并没有说明何时是删除,何时是增加。

也就说,操作位置可以确定,当我只想增加的时候参数应该长这样:
array.splice(index,0,[增加元素])

当我只想删除的时候参数长这样:
array.splice(index,删除个数)
此时之后没有需要增加的元素

如此人为控制你需要用于增加还是删除


当然可以知道,若需要清空数组就可以用如下操作
array.splice(0,array.lenght)
在这里插入图片描述

但是如果我们填入参数时,删除个数不为0,且存在增加元素,该函数如何运作

在这里插入图片描述
此处我们在下标3上删除2个元素,并增加一个元素
结果是删除了下标为3的值,并且增加了一个元素,因为下标位3往后只存在一个元素,所以删除2个元素不成立,只删除了一个,并且不会报错越界。

在这里插入图片描述
当我继续从下标0开始删除2个元素并添加一个元素时,删除了值1,2,并在原来的位置增加了一个元素。


文章作者: KuroNeko Nano
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 KuroNeko Nano !
评论
 上一篇
LeetCode 57.插入区间 LeetCode 57.插入区间
给出一个无重叠的 ,按照区间起始端点排序的区间列表。 在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。 输入: intervals = [[1,3],[6,9]], newInterval
2020-01-08 KuroNeko Nano
下一篇 
【图像处理:平移,缩放,旋转等】仿射变换过程与仿射变换矩阵 【图像处理:平移,缩放,旋转等】仿射变换过程与仿射变换矩阵
遇到了一些情况需要将图片旋转一定角度使其相对来说是符合人类认知的形式【就是歪图转正】于是接触了处理图片的经典方式——仿射变换 定义:仿射变换的功能是从二维坐标到二维坐标之间的线性变换,且保持二维图形的“平直性”和“平行性”。仿射变换可以通
2020-01-06 KuroNeko Nano
  目录