删除一个数组中的元素
程序员文章站
2024-01-06 14:06:40
...
删除数组中的一个元素:
1、屡试不鲜的应该是splice()搭配indexOf()
var arr = ['red','bule','yellow','green']
//去除bule项
arr.splice(arr.indexOf('bulu'),1)
这种方法只适用于简单的数组,如果碰上数组对象就不行了。
2、splice()搭配forEach()
var arr = [
{positionId: 1, hotspot: 2, capacityId: "3", technique: "Mybatis", positions: "Java工程师"}
{positionId: 1, hotspot: 2, capacityId: "3", technique: "HTML", positions: "Java工程师"}
{positionId: 1, hotspot: 2, capacityId: "3", technique: "CSS", positions: "Java工程师"}
{positionId: 1, hotspot: 1, capacityId: "3", technique: "RabbitMQ", positions: "Java工程师"}
{positionId: 1, hotspot: 2, capacityId: "3", technique: "Springboot", positions: "Java工程师"}
]
//现在想删除在arr中technique="Mybatis"项
arr.forEach((item,index) => {
if(item.technique == Mybatis ) {
arr.splice(index,1)
}
})
这种方法处理一些比较复杂的对象数组
3、其实观察一下就发现自己可以写一些数组的自定义方法(可以自己封装一些方法)
//这其实就是indexOf方法的由来
Array.prototype.indexOf = function(val) {
for (var i = 0; i < this.length; i++) {
if (this[i] == val) return i;
}
return -1;
};