删除一个数组中的元素

删除数组中的一个元素:

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; 
    };

猜你喜欢

转载自blog.csdn.net/weixin_43131046/article/details/114871164