javascript刪除數組中指定元素的方法:1、使用delete關鍵字,語法格式「delete array[數組下標]」;2、使用splice()函數,語法格式「array.splice(數組下標,1)」。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
javascript自帶刪除陣列元素方法有:
#1.delete方法
delete刪除掉數組中的元素後,會把該下標出的值置為undefined,數組的長度不會變
如:
delete arr[1] //[‘a’, ,‘c’,‘d’] 中间出现两个逗号,数组长度不变,有一项为undefined
2.splice方法
splice() 方法用於新增或刪除陣列中的元素。
注意:這個方法會改變原始陣列。
傳回值: 如果刪除了陣列元素,則傳回的是含有被刪除元素的陣列。 如果只刪除一個元素,則傳回一個元素的陣列。如果未刪除任何元素,則傳回空數組。
範例:
//获取元素在数组的下标 Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) { return i; }; } return -1; }; //根据数组的下标,删除该下标的元素 Array.prototype.remove = function(val) { var index = this.indexOf(val); if (index > -1) { this.splice(index, 1); } }; //测试数据 var insertAttaList = ['abs','dsf',,'abc','sdf','fd']; insertAttaList.remove('abc');
splice(index,len,[item])
註解:此方法會改變原始陣列。
splice有3個參數,它也可以用來替換/刪除/新增陣列內某一個或幾個值
index:陣列開始下標
len: 替換/刪除的長度
item:替換的值,刪除操作的話item為空
如:
arr = [‘a’,‘b’,‘c’,‘d’]
刪除---- item不設定
arr.splice(1,1) //[‘a’,‘c’,‘d’] 删除起始下标为1,长度为1的一个值,len设置的1,如果为0,则数组不变 arr.splice(1,2) //[‘a’,‘d’] 删除起始下标为1,长度为2的一个值,len设置的2
替換---- item為替換的值
arr.splice(1,1,‘ttt’) //[‘a’,‘ttt’,‘c’,‘d’] 替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1 arr.splice(1,2,‘ttt’) //[‘a’,‘ttt’,‘d’] 替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1
新增---- len設定為0,item為新增的值
arr.splice(1,0,‘ttt’) //[‘a’,‘ttt’,‘b’,‘c’,‘d’] 表示在下标为1处添加一项‘ttt’
【推薦學習:javascript進階教學】
以上是javascript數組如何刪除指定元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!