Javascript 为什么我从这个简单的拼接命令中得到这个输出?

Javascript 为什么我从这个简单的拼接命令中得到这个输出?,javascript,variable-assignment,splice,Javascript,Variable Assignment,Splice,我有一个小问题需要理解为什么我会得到这个输出 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' ] [] 为什

我有一个小问题需要理解为什么我会得到这个输出

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' ]  
这是作业问题还是什么?

阅读有关方法的内容。它回来了

包含已删除元素的数组。如果只删除一个元素,则返回一个元素的数组

这样做

arr2 = arr2.splice(2,0,"2");

使用splice返回的空数组覆盖初始数组
arr

1-splice方法更改数组的内容


2-splice方法返回删除的元素-**不是原始数组**

完全没有看到这个答案。否则就不会发布副本了。:)那么,是否不可能将.split()和.splice()链接起来?如果我们有
var str=“12345”为了输出:
[“1”、“2”、“a”、“3”、“4”、“5”]
我们必须做什么:
var arr=str.split(“”);阵列拼接(2,0,“a”);返回arr?为什么我们不能使用
arr=str.split(“”).splice(2,0,“a”)
@Moolla不,您不能这样链接它们,因为
splice
不会返回第一个数组。