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 相关文章推荐
jquery之empty()与remove()区别说明
Sep 10 Javascript
分享一个自己写的table表格排序js插件(高效简洁)
Oct 29 Javascript
javascript插入样式实现代码
Feb 22 Javascript
JavaScript实现url地址自动检测并添加URL链接示例代码
Nov 12 Javascript
js和css写一个可以自动隐藏的悬浮框
Mar 05 Javascript
小议JavaScript中Generator和Iterator的使用
Jul 29 Javascript
jQuery过滤选择器用法示例
Sep 12 Javascript
js的三种继承方式详解
Jan 21 Javascript
JavaScript取得gridview中获取checkbox选中的值
Jul 24 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
Dec 12 Javascript
angularjs 获取默认选中的单选按钮的value方法
Feb 28 Javascript
微信小程序工具函数封装
Oct 28 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脚本数据库功能详解(上)
2006/10/09 PHP
php一个找二层目录的小东东
2012/08/02 PHP
Javascript 获取字符串字节数的多种方法
2009/06/02 Javascript
通用javascript脚本函数库 方便开发
2009/10/13 Javascript
用JavaScript对JSON进行模式匹配(Part 1-设计)
2010/07/17 Javascript
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
2012/12/19 Javascript
浅析javascript中函数声明和函数表达式的区别
2015/02/15 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
使用ES6语法重构React代码详解
2017/05/09 Javascript
浅谈Vue 初始化性能优化
2017/08/31 Javascript
vue项目中的webpack-dev-sever配置方法
2017/12/14 Javascript
微信小程序中添加客服按钮contact-button功能
2018/04/27 Javascript
antd Upload 文件上传的示例代码
2018/12/14 Javascript
koa router 多文件引入的方法示例
2019/05/22 Javascript
node express使用HTML模板的方法示例
2019/08/22 Javascript
微信小程序实现注册登录功能(表单校验、错误提示)
2019/12/10 Javascript
在react中使用vue的状态管理的方法示例
2020/05/02 Javascript
如何编写一个 Webpack Loader的实现
2020/10/18 Javascript
vue的hash值原理也是table切换实例代码
2020/12/14 Vue.js
JavaScript实现前端倒计时效果
2021/02/09 Javascript
python创建进程fork用法
2015/06/04 Python
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
Python查找最长不包含重复字符的子字符串算法示例
2019/02/13 Python
Python实现html转换为pdf报告(生成pdf报告)功能示例
2019/05/04 Python
使用python制作一个为hex文件增加版本号的脚本实例
2019/06/12 Python
用Python解数独的方法示例
2019/10/24 Python
pytorch实现保证每次运行使用的随机数都相同
2020/02/20 Python
一款纯css3实现的圆形旋转分享按钮旋转角度可自己调整
2014/09/02 HTML / CSS
Groupon法国官方网站:特卖和网上购物高达-70%
2019/09/02 全球购物
资生堂英国官网:Shiseido英国
2020/12/30 全球购物
mysql有关权限的表都有哪几个
2015/04/22 面试题
中级会计职业生涯规划范文
2014/01/16 职场文书
2015年计划生育协会工作总结
2015/05/13 职场文书
2015年安全生产月工作总结
2015/07/27 职场文书
七年级写作指导之游记作文
2019/10/07 职场文书
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python