PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

javascript数组如何删除指定元素

青灯夜游
青灯夜游 原创
2021-04-27 11:17:55 10917浏览

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 = [&#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高级教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。