How to delete an array in Javascript: 1. Use the delete method, the code is [delete arr[1]]; 2. Use the array object splice method, the code is [arr.splice(1,1);].
The operating environment of this tutorial: Windows 7 system, JavaScript version 1.8.5, DELL G3 computer.
Javascript method to delete array:
1, delete method: delete arr[1]
This way array The length remains unchanged. At this time, arr[1] becomes undefined, but it also has the advantage that the index of the original array remains unchanged. At this time, if you want to traverse the array elements, you can use the
for(index in arr) { document.write('arr['+index+']='+arr[index]); }
traversal method to skip them. Undefined element
2, array object splice method: arr.splice(1,1);
In this way, the array length changes accordingly, but the original array index Also change accordingly
The first 1 in the splice parameter is the starting index of deletion (counting from 0), here it is the second element of the array
The second 1 is The number of elements to delete, only one element is deleted here, that is, 'b';
At this time, the array elements can be traversed in the normal way of traversing the array, such as for, because the deleted elements are in
It is not retained in the array
It is worth mentioning that the splice method can also add new array elements while deleting array elements
For example, arr.splice(1,1,'d ','e'),d,e elements are added to the array arr
The result array becomes arr:'a','d','e','c'
In addition, JavaScript truncates the array by setting the length property of the array, which is the only way to shorten the length of the array.
If you use the delete operator to delete an element in the array, although that element becomes undefined, the length attribute of the array does not change. There are two methods of deleting elements and changing the length of the array.
/* * 方法:Array.remove(dx) * 功能:删除数组元素. * 参数:dx删除元素的下标. * 返回:在原数组上修改数组 */ //经常用的是通过遍历,重构数组. Array.prototype.remove=function(dx) { if(isNaN(dx)||dx>this.length){return false;} for(var i=0,n=0;i<this.length;i++) { if(this[i]!=this[dx]) { this[n++]=this[i] } } this.length-=1 } a = ['1','2','3','4','5']; alert("elements: "+a+"nLength: "+a.length); a.remove(0); //删除下标为0的元素 alert("elements: "+a+"nLength: "+a.length);
Related free learning recommendations: javascript video tutorial
The above is the detailed content of How to delete an array in Javascript. For more information, please follow other related articles on the PHP Chinese website!