2015-11-06 28 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原始陣列上操作。