Array.prototype.splice截取数组

常见的删除一个元素和新增一个元素就不说了,这里说说其另一个用法

const arr = [1, 2, 3]
arr.splice(2)

最终打印数组arr输出的结果为[1, 2]

splice的第二个参数其实是可以省略的,这段代码相当于[1, 2, 3].splice(2, arr.length - 2),可以参见MDN相关说明。

所以呢,上面的这种用法等价于arr.length = 2

在使用Vue进行数据操作时,如果你直接arr.length = 2,Vue是无法侦测数据变动的,但是如果使用arr.splice(2),就可以很好的解决这个问题。可以参见Vue的相关说明

splice这种省略第二个参数的用法不太常见,我从vue的官方文档上发现了这种写法,的确足够简单而强大。

如果您觉得本文对您有用,欢迎捐赠或留言~
微信支付
支付宝

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注