从json数组中删除一些数据[关闭]

问题描述 投票:0回答:2

这是我的json数组。这是在我在下拉列表中选择一些元素时创建的。然后可以更改数组元素的数量

"Actions":[  
      {  
         "key":"AC_001",
         "tag":"AWARD_POINTS",
         "name":"Award Points",
         "content":{  
            "html":"<div class='col-sm-4'><label for='point-amount'>Amount</label><input type='number' class='form-control' id='point-amount' placeholder='Add Points'></div>",
            "actions":""
         },
         "identify":"",
         "value":"",
         "uuid":"f0a8ae1f-9c2c-9cc3-eb38-7a7ab0570dd1"
      },
      {  
         "key":"AC_003",
         "tag":"SEND_MAIL",
         "name":"Send Mail",
         "content":{  
            "html":""
         },
         "identify":"",
         "value":"",
         "uuid":"83af6438-a292-a34b-e435-8795281ec393"
      }
   ]

我想在这里删除一些标签,只显示几个标签。但我知道如何做到这一点。有人帮我吗?

javascript arrays json
2个回答
1
投票

您可以通过以下模式删除动态生成的json数组中的任何元素

var data = {
	"Actions":[  
      {  
         "key":"AC_001",
         "tag":"AWARD_POINTS",
         "name":"Award Points",
         "content":{  
            "html":"<div class='col-sm-4'><label for='point-amount'>Amount</label><input type='number' class='form-control' id='point-amount' placeholder='Add Points'></div>",
            "actions":""
         },
         "identify":"",
         "value":"",
         "uuid":"f0a8ae1f-9c2c-9cc3-eb38-7a7ab0570dd1"
      },
      {  
         "key":"AC_003",
         "tag":"SEND_MAIL",
         "name":"Send Mail",
         "content":{  
            "html":""
         },
         "identify":"",
         "value":"",
         "uuid":"83af6438-a292-a34b-e435-8795281ec393"
      }
   ]
}
 
for(var x=0; x<data.Actions.length; x++) 
{   
	var key = "tag";
	delete data.Actions[x][key];
	console.log(data.Actions[x].tag); //  should be undefined
    console.log(data.Actions[x].name); //  will be return value from array
} 

2
投票

如果你想删除数组的某些元素并且不在你的下拉列表中包含它们,你可以使用qazxsw poi

假设您不希望将以下数组元素包含在标记中

filter

您可以使用let doNotInclude = ['DELETE_THIS_TAG', 'TAG_TO_DELETE']; filter创建一个新数组,以便在您的下拉列表中使用。

includes
© www.soinside.com 2019 - 2024. All rights reserved.