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陣列如何刪除指定元素的詳細內容,更多請關注TW511.COM其它相關文章!