Rumah  >  Artikel  >  hujung hadapan web  >  javascript数组如何删除指定元素

javascript数组如何删除指定元素

青灯夜游
青灯夜游asal
2021-04-27 11:17:5511258semak imbas

javascript删除数组中指定元素的方法:1、使用delete关键字,语法格式“delete array[数组下标]”;2、使用splice()函数,语法格式“array.splice(数组下标,1)”。

javascript数组如何删除指定元素

本教程操作环境: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 = [&#39;abs&#39;,&#39;dsf&#39;,,&#39;abc&#39;,&#39;sdf&#39;,&#39;fd&#39;];
insertAttaList.remove(&#39;abc&#39;);

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高级教程

Atas ialah kandungan terperinci javascript数组如何删除指定元素. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:chrome怎么设置javascriptArtikel seterusnya:数组长度用size还是length