JS删除数组里的某个元素方法


Posted in Javascript onFebruary 03, 2018

删除数组指定的某个元素

js删除数组中某一项或几项的几种方法 https://3water.com/article/154737.htm

首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为:

Array.prototype.indexOf = function(val) { 
for (var i = 0; i < this.length; i++) { 
if (this[i] == val) return i; 
} 
return -1; 
};

然后使用通过得到这个元素的索引,使用js数组自己固有的函数去删除这个元素:

代码为:

Array.prototype.remove = function(val) { 
var index = this.indexOf(val); 
if (index > -1) { 
this.splice(index, 1); 
} 
};

这样就构造了这样一个函数,比如我有有一个数组:

var emp = ['abs','dsf','sdf','fd']

假如我们要删除其中的 'fd' ,就可以使用:

emp.remove('fd');

删除的数组的某一项

splice(index,len,[item]) 注释:该方法会改变原始数组。

splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值

index:数组开始下标 len: 替换/删除的长度 item:替换的值,删除操作的话 item为空

如:arr = ['a','b','c','d']

删除

//删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变) 
var arr = ['a','b','c','d']; 
arr.splice(1,1); 
console.log(arr); 
//['a','c','d']; 
 
 
//删除起始下标为1,长度为2的一个值(len设置2) 
var arr2 = ['a','b','c','d'] 
arr2.splice(1,2); 
console.log(arr2); 
//['a','d']

替换

//替换起始下标为1,长度为1的一个值为‘ttt',len设置的1 
var arr = ['a','b','c','d']; 
arr.splice(1,1,'ttt'); 
console.log(arr); 
//['a','ttt','c','d'] 
 
 
var arr2 = ['a','b','c','d']; 
arr2.splice(1,2,'ttt'); 
console.log(arr2); 
//['a','ttt','d'] 替换起始下标为1,长度为2的两个值为‘ttt',len设置的1

添加 ---- len设置为0,item为添加的值

var arr = ['a','b','c','d']; 
arr.splice(1,0,'ttt'); 
console.log(arr); 
//['a','ttt','b','c','d'] 表示在下标为1处添加一项'ttt'

delete方法删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变

var arr = ['a','b','c','d']; 
delete arr[1]; 
arr; 
//["a", undefined × 1, "c", "d"] 中间出现两个逗号,数组长度不变,有一项为undefined

以上这篇JS删除数组里的某个元素方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 创建对象(常见的几种方法)
Nov 03 Javascript
js页面滚动时层智能浮动定位实现(jQuery/MooTools)
Aug 23 Javascript
innerHTML与jquery里的html()区别介绍
Oct 12 Javascript
关于jquery css的使用介绍
Apr 18 Javascript
JS判断不能为空实例代码
Nov 26 Javascript
node.js中的fs.lchmod方法使用说明
Dec 16 Javascript
javascript弹出拖动窗口
Aug 11 Javascript
浅析js中substring和substr的方法
Nov 09 Javascript
Bootstrap每天必学之进度条
Nov 30 Javascript
Chart.js 轻量级HTML5图表绘制工具库(知识整理)
May 22 Javascript
vue展示dicom文件医疗系统的实现代码
Aug 27 Javascript
Js视频播放器插件Video.js使用方法详解
Feb 04 Javascript
jQuery niceScroll滚动条错位问题的解决方法
Feb 03 #jQuery
JS实现百度搜索接口及链接功能实例代码
Feb 02 #Javascript
原生JS实现的双色球功能示例
Feb 02 #Javascript
jQuery实现的下雪动画效果示例【附源码下载】
Feb 02 #jQuery
微信小程序实现列表下拉刷新上拉加载
Jul 29 #Javascript
微信小程序数字滚动插件使用详解
Feb 02 #Javascript
JS中的BOM应用
Feb 02 #Javascript
You might like
php fckeditor 调用的函数
2009/06/21 PHP
phpMyAdmin 链接表的附加功能尚未激活问题的解决方法(已测)
2012/03/27 PHP
Laravel5.5+ 使用API Resources快速输出自定义JSON方法详解
2020/04/06 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
用javascript实现自定义标签
2007/05/08 Javascript
jQuery 选择器、DOM操作、事件、动画
2010/11/25 Javascript
实用的JS正则表达式(手机号码/IP正则/邮编正则/电话等)
2013/01/11 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
js 触发select onchange事件代码
2014/03/20 Javascript
JQuery替换DOM节点的方法
2015/06/11 Javascript
JavaScript如何自定义trim方法
2015/07/28 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
JavaScript之Vue.js【入门基础】
2016/12/06 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
微信小程序 本地图片按照屏幕尺寸处理
2017/08/04 Javascript
vue 循环加载数据并获取第一条记录的方法
2018/09/26 Javascript
简单了解vue 插值表达式Mustache
2020/07/22 Javascript
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python利用pyHook实现监听用户鼠标与键盘事件
2014/08/21 Python
Python中使用PyQt把网页转换成PDF操作代码实例
2015/04/23 Python
Python实现多并发访问网站功能示例
2017/06/19 Python
Python图像处理之gif动态图的解析与合成操作详解
2018/12/30 Python
Python去除字符串前后空格的几种方法
2019/03/04 Python
Python collections模块使用方法详解
2019/08/28 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
浅谈在JupyterNotebook下导入自己的模块的问题
2020/04/16 Python
Python Opencv轮廓常用操作代码实例解析
2020/09/01 Python
python 从list中随机取值的方法
2020/11/16 Python
保护环境建议书400字
2014/05/13 职场文书
在职党员进社区活动总结
2014/07/05 职场文书
市委召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
教师个人成长总结
2015/02/11 职场文书
检察院起诉意见书
2015/05/20 职场文书
golang在GRPC中设置client的超时时间
2021/04/27 Golang
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers