首页 > 解决方案 > 如何使用过滤器javascript删除数组值中的元素

问题描述

我想删除所有元素 getData 因为它总是相同的值。我尝试使用过滤方法来删除它们

这是我的数据

let data = [
    {
        "id": 3,
        "employee_id": 2290,
        "getData": {
            "id": 9070
        },
    },
     {
        "id": 4,
        "employee_id": 2291,
        "getData": {
            "id": 9070
        },
    }
]

这是我所做的

data =  data.filter(item => {
            return item.getData != null;
        });

这就是我想要的

let data = [
  {
      "id": 3,
      "employee_id": 2290,
  },
   {
      "id": 4,
      "employee_id": 2291,

  }
]

如果不是,过滤器是最好的删除方法,请给我一些建议,谢谢

标签: javascript

解决方案


过滤器用于从数组中过滤出项目,更适合您想要实现的方式是map()forEach()。下面是一个可以帮助你的演示。

还要从对象使用delete运算符中删除属性

let data = [
    {
        "id": 3,
        "employee_id": 2290,
        "getData": {
            "id": 9070
        },
    },
     {
        "id": 4,
        "employee_id": 2291,
        "getData": {
            "id": 9070
        },
    }
]

data.map((item)=>{delete item.getData});
console.log(data);

let data2 = [
    {
        "id": 3,
        "employee_id": 2290,
        "getData": {
            "id": 9070
        },
    },
     {
        "id": 4,
        "employee_id": 2291,
        "getData": {
            "id": 9070
        },
    }
]

data2.forEach((item)=>{delete item.getData});
console.log(data);

希望这有帮助:)


推荐阅读