数组元素删除疑问
对于数组的 splice 方法,有些人可能会疑惑为什么以下代码:
console.log(['1','2','3','4','5'].splice(3, 1))
返回的是 [‘4’],而不是预期的 [‘1′,’2′,’3′,’5’]。
理解 splice 方法
立即学习“Java免费学习笔记(深入)”;
splice 方法的作用是删除和替换数组中的元素。第一个参数指定要删除元素的索引,第二个参数指定要删除的元素数量。
示例中的行为
在给定的示例中:
- splice(3, 1) 删除了索引为 3 的元素,即 ‘4’。
- 因此,返回的值是一个包含被删除元素的数组,即 [‘4’]。
想要修改后的数组
如果你想要返回修改后的数组而不是被删除的元素,可以使用 tospliced 方法:
console.log(['1','2','3','4','5'].toSpliced(3, 1)) // 输出 ['1', '2', '3', '5']