js删除数组中指定对象

需求说明

点击删除按钮删除指定行数据,即删除数组中指定对象。

_arr表示一个Array数组,里面包括了很多的对象如下图:

从数组中移除指定对象函数封装 removeArray

/** 
 * 从数组中删除指定对象
 *  _arr:数组
 *  _obj:需删除的对象
 * */
export function removeArray(_arr, _obj) {
          
   
  let length = _arr.length
  for (let i = 0; i < length; i++) {
          
   
    if (_arr[i] === _obj) {
          
   
      if (i === 0) {
          
   
        _arr.shift() //删除并返回数组的第一个元素
        return _arr
      } else if (i === length - 1) {
          
   
        _arr.pop()  //删除并返回数组的最后一个元素
        return _arr
      } else {
          
   
        _arr.splice(i, 1) //删除下标为i的元素
        return _arr
      }
    }
  }
}

从数组中获取指定对象索引函数封装 getArrayIndex

/** 从数组中获取指定对象索引 */
function getArrayIndex (_arr,_obj) {
          
   
            let len = _arr.length;
            for(let i = 0; i < len; i++)
            {
          
   
                if(_arr[i] == _obj)
                {
          
   
                    return parseInt(i);
                }
            }
            return -1;
        };

在Vue中调用函数使用

/** 删除  */
    handleDelete(row) {
          
   
      const id = row.id
      this.tableData = removeArray(this.tableData,row)
      console.log(this.tableData)
    },
经验分享 程序员 微信小程序 职场和发展