我在理解为什么会得到这个输出时遇到了一个小问题。
var arr = ["a", "b", "c", "d", "e", "f"];
arr.splice(2,0,"1");
console.log(arr);
var arr2 = ["a", "b", "c", "d", "e", "f"];
arr2 = arr2.splice(2,0,"2");
console.log(arr2);
输出是:
[ 'a', 'b', '1', 'c', 'd', 'e', 'f' ]
[]
为什么第二行输出的不是:
[ 'a', 'b', '2', 'c', 'd', 'e', 'f' ]
是赋值问题还是什么?
最佳答案
正在阅读 splice方法。它返回
An array containing the removed elements. If only one element is removed, an array of one element is returned.
所以通过做
arr2 = arr2.splice(2,0,"2");
你用 splice 返回的空数组 []
覆盖初始数组 arr
。
关于javascript - 为什么我从这个简单的 splice 命令得到这个输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16382414/