JS删除数组里的某个元素要领

删除数组指定的某个元素

js删除数组中某一项或几项的几种要领 https://www.jb51.net/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删除数组里的某个元素要领就是小编分享给各人的全部内容了,但愿能给各人一个参考,也但愿各人多多支持剧本之家。

您大概感乐趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsjywj.html