刪除方法:1、用pop()在陣列尾部刪除元素;2、用shift()在陣列開頭刪除元素;3、用delete運算子刪除指定下標位置元素;4、用length屬性刪除尾端一個或多個元素;5、用splice()刪除指定下標位置後一個或多個元素。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
方法1:使用pop() 方法在陣列尾部刪除元素
#pop() 方法能夠刪除陣列中最後一個元素,並傳回被刪除的元素。
範例:
var a = []; //定义数组,模拟空栈 console.log(a.push(1)); //入栈,栈值为[1],length为1 console.log(a.push(2)); //入栈,栈值为[1,2],length为2 console.log(a.pop()); //出栈,栈值为[1],length为1 console.log(a.push(3,4)); //入栈,栈值为[1,3,4],length为3 console.log(a.pop()); //出栈,栈值为[1,3],length为2 console.log(a.pop()); //出栈,栈值为[1],length为1
方法2:使用shift() 方法在陣列開頭刪除元素
shift() 方法能夠刪除陣列第1 個元素,並傳回該元素,然後將剩餘所有元素前移1 位,以填補陣列頭部的空缺。如果陣列為空,shift() 將不進行任何操作,傳回 undefined。
範例:
var a = [1,2,3,4,5]; //定义数组 for (var i in a) { //遍历数组 var t = a.pop(); //尾部弹出 a.unshift(t * 10); //头部推入,把推进的值放大10倍 } console.log(a); //返回[10,20,30,40,50]
方法3:使用delete 運算子
使用 delete 運算子能刪除指定下標位置的陣列元素,刪除後的元素為空位元素,刪除陣列的 length 維持不變。
var a = [1, 2, true, "a", "b"]; delete a[0]; console.log(a);
方法4:使用 length 屬性
#使用 length 屬性可以刪除尾部一個或多個元素,甚至可以清空整個陣列。刪除元素之後陣列的 length 將會動態保持更新。
var a = [1, 2, true, "a", "b"]; a.length = 3; console.log(a);
方法5:使用 splice() 方法
#使用 splice() 方法可以刪除指定下標位置後一個或多個陣列元素。此方法的參數比較多,功能也很多,本節範例僅示範它如何刪除陣列元素。其中第 1 個參數為操作的起始下標位置,第 2 個參數指定要刪除元素的個數。
var a = [1,2,3,4,5]; a.splice(1,2); console.log(a);
在splice(1,2,3,4,5) 方法中,第1 個參數值1 表示從陣列a 的第2 個元素位置開始,刪除2 個元素,刪除後陣列a僅剩下3 個元素。
如果給splice() 方法傳遞一個參數,則該方法僅執行刪除操作,參數值指定刪除元素的起始下標(包括該下標元素),splice() 方法將刪除後面所有元素。
var a = [1,2,3,4,5]; a.splice(2); console.log(a);
【相關推薦:javascript學習教學】
#以上是javascript數組怎麼刪除項目(元素)的詳細內容。更多資訊請關注PHP中文網其他相關文章!