Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何删除嵌套数组中名称属性未定义的JSON对象_Javascript_Jquery_Json - Fatal编程技术网

Javascript 如何删除嵌套数组中名称属性未定义的JSON对象

Javascript 如何删除嵌套数组中名称属性未定义的JSON对象,javascript,jquery,json,Javascript,Jquery,Json,从下面的JSON中,我得到了areaQuotas数组,对于其中一些数组,name属性不存在 [ { "forums": "", "resource": { "dhjName": "myvhp", "dhj": { "areaProgramValue": "123", "areaQuotas": [ { "areaQuotaValue": "1234",

从下面的JSON中,我得到了areaQuotas数组,对于其中一些数组,name属性不存在

[
  {
    "forums": "",
    "resource": {
      "dhjName": "myvhp",
      "dhj": {
        "areaProgramValue": "123",
        "areaQuotas": [
          {
            "areaQuotaValue": "1234",
            "name": "acc"
          },
          {
            "areaQuotaValue": "12345",
            "name": "pro"
          }
        ],
        "methodType": "DGH",

      }
    },
    "task": "create"
  },
  {
    "forums": "",
    "resource": {
      "dhjName": "myvhp",
      "dhj": {
        "areaProgramValue": "123",
        "areaQuotas": [
          {
            "areaQuotaValue": "1234",
            "name": "acc"
          },
          {
            "areaQuotaValue": "12345",
            "name": "pro"
          },
          {
            "areaQuotaValue": "5666"
          },
          {
            "areaQuotaValue": "7666"
          }
        ],
        "methodType": "DGH",

      }
    },
    "task": "create"
  },

]
从下面的JSON中,我得到了areaQuotas数组,其中一些数组的name属性不存在

[
  {
    "forums": "",
    "resource": {
      "dhjName": "myvhp",
      "dhj": {
        "areaProgramValue": "123",
        "areaQuotas": [
          {
            "areaQuotaValue": "1234",
            "name": "acc"
          },
          {
            "areaQuotaValue": "12345",
            "name": "pro"
          }
        ],
        "methodType": "DGH",

      }
    },
    "task": "create"
  },
  {
    "forums": "",
    "resource": {
      "dhjName": "myvhp",
      "dhj": {
        "areaProgramValue": "123",
        "areaQuotas": [
          {
            "areaQuotaValue": "1234",
            "name": "acc"
          },
          {
            "areaQuotaValue": "12345",
            "name": "pro"
          },
          {
            "areaQuotaValue": "5666"
          },
          {
            "areaQuotaValue": "7666"
          }
        ],
        "methodType": "DGH",

      }
    },
    "task": "create"
  },

]
如何删除areaQuotas数组中名称属性未定义的所有对象

我已尝试如下所示

test = test.filter((obj) =>  typeof obj.resource.dhj.areaQuotas.name === 'undefined');
这是我的小提琴


您可以将
forEach
过滤器一起使用

test.forEach(item => {
  item.resource.dhj.areaQuotas = item.resource.dhj.areaQuotas.filter(
    areaQuota => {
      return areaQuota.hasOwnProperty('name');
    }
  );
});

这是更新后的提琴:

您可以使用
forEach
filter

test.forEach(item => {
  item.resource.dhj.areaQuotas = item.resource.dhj.areaQuotas.filter(
    areaQuota => {
      return areaQuota.hasOwnProperty('name');
    }
  );
});
以下是更新的小提琴: