在撰寫javascript時常常會遇到一個情境,就是當我們要對某個陣列進行元素的移除,此時我們可以有兩種方式選擇,分別為delete、splice,但是在使用時須注意兩者的差異。
一、delete:從以下的代碼我們可以得知delete並沒有真正的移除該元素,只是刪除了資料而已,因此內容為undefined,長度也與原始內容一樣。
var a = [1,2,3]; delete a[2]; //content: [1,2,undefined]; //length: a.length = 3;
二、splice:使用此方式就真正移除該元素並非僅刪除資料。
var a = [1,2,3]; a.splice(2,1); //content: [1,2]; //length: a.length = 2;
留言
張貼留言