Js数组里剔除指定的元素(不是指定的位置)

Array数组之变异和非变异方法

https://www.qianduan7.com/javascript/javascript-array-mutation-method.html

s数组里删除指定的元素(不是指定的位置)
之前一直是做后端的,从来也没有写过js,但是却一直想学学,也只是基于兴趣而已!现在到了这个公司,确实大量的写js。但也一直都是没有系统的去看过js!都是搞什么查什么!
最近要解决一个问题,但是用到了js的数组,知道了元素要去删除这个数组中的这个指定的元素。网上找到了一些解决办法,在这里做个笔记记下来:
首先可以给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');

<script>
var s=new Array(5);
s[0]='0';
s[1]='1';
s[2]='2';
s[3]='3';
s[4]='4';
s.splice(1,1);//移除s[1]
alert(s.length);//值为4
alert(s[1]);//值为2
</script>

上一篇:2015 ACM-ICPC 沈阳站


下一篇:判断js数组包是否包含某个元素