2015-11-06 56 views
0

工作从MDN网站方法Array.splice不能在Firefox控制台

var myFish = ['angel', 'clown', 'mandarin', 'surgeon']; 

// removes 0 elements from index 2, and inserts 'drum' 
var removed = myFish.splice(2, 0, 'drum'); 

尝试下面的代码不分配,除去剪接['angel', 'clown', 'drum', 'mandarin', 'surgeon']的预期输出,而是和空数组[]

回答

2

我想你很困惑splice的返回值。它不会返回修改后的数组,但会删除元素。在这种情况下,您没有删除任何文件,因此如果您登录removed,则会收到一个空的Array

var myFish = ['angel', 'clown', 'mandarin', 'surgeon']; 
var removed = myFish.splice(2, 0, 'drum'); 
console.log(myFish); 
console.log(removed); 

输出:

Array [ "angel", "clown", "drum", "mandarin", "surgeon" ] 
Array [ ] 
0

Array.prototype.splice原始阵列上操作。