登录  /  注册
首页 > web前端 > js教程 > 正文

javascript数组如何删除指定元素

青灯夜游
发布: 2021-04-27 11:17:55
原创
11089人浏览过
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高级教程

以上就是javascript数组如何删除指定元素的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号