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 相关文章推荐
极酷的javascirpt,让你随意编辑任何网页
Feb 25 Javascript
Array.prototype.slice.apply的使用方法
Mar 17 Javascript
读jQuery之十四 (触发事件核心方法)
Aug 23 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
Nov 10 Javascript
JS小功能(onmouseover实现选择月份)实例代码
Nov 28 Javascript
jQuery中innerHeight()方法用法实例
Jan 19 Javascript
js实现正则匹配中文标点符号的方法
Dec 23 Javascript
JS取模、取商及取整运算方法示例
Oct 13 Javascript
学习vue.js条件渲染
Dec 03 Javascript
canvas绘制环形进度条
Feb 23 Javascript
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
Feb 14 Javascript
JavaScript设计模式之缓存代理模式原理与简单用法示例
Aug 07 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
全国FM电台频率大全 - 7 吉林省
2020/03/11 无线电
php将字符串转换成16进制的方法
2015/03/17 PHP
PHP中使用hidef扩展代替define提高性能
2015/04/09 PHP
PHP实现简单日历类编写
2020/08/28 PHP
25个优雅的jQuery Tooltip插件推荐
2011/05/25 Javascript
Node.js实战 建立简单的Web服务器
2012/03/08 Javascript
JS判断当前日期是否大于某个日期的实现代码
2012/09/02 Javascript
推荐17个优美新鲜的jQuery的工具提示插件
2012/09/14 Javascript
Javascript实现页面跳转的几种方式分享
2013/10/26 Javascript
表单验证正则表达式实例代码详解
2015/11/09 Javascript
jquery弹出框插件jquery.ui.dialog用法分析
2016/08/20 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
网页挂马方式整理及详细介绍
2016/11/03 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
2017/01/04 Javascript
js实现背景图自适应窗口大小
2017/01/10 Javascript
node.js实现登录注册页面
2017/04/08 Javascript
VUE页面中加载外部HTML的示例代码
2017/09/20 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
layui表格内容溢出的解决方法
2019/09/06 Javascript
Layui带搜索的下拉框的使用以及动态数据绑定方法
2019/09/28 Javascript
用Python操作字符串之rindex()方法的使用
2015/05/19 Python
使用Python &amp; Flask 实现RESTful Web API的实例
2017/09/19 Python
Python使用matplotlib绘制余弦的散点图示例
2018/03/14 Python
python实现提取str字符串/json中多级目录下的某个值
2020/02/27 Python
Python是什么 Python的用处
2020/05/26 Python
使用TensorBoard进行超参数优化的实现
2020/07/06 Python
python语言time库和datetime库基本使用详解
2020/12/25 Python
时尚设计师手表:The Watch Cabin
2018/10/06 全球购物
shell程序中如何注释
2012/02/17 面试题
幼师中班个人总结
2015/02/12 职场文书
2015年公务员个人工作总结
2015/04/24 职场文书
保护动物的宣传语
2015/07/13 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
Go Gin实现文件上传下载的示例代码
2021/04/02 Golang
关于maven依赖 ${xxx.version}报错问题
2022/01/18 Java/Android
MySQL实现字段分割一行转多行的示例代码
2022/07/07 MySQL