I have a json object as below :
var jsonData = [
{COUNTRY_NAME: "Belgium", COUNTRY_CODE: "BE", TERRITORY: "BENELUX", MARKET: "Benelux", REGION: "NORTH"},
{COUNTRY_NAME: "Italy", COUNTRY_CODE: "IT", TERRITORY: "ITALY", MARKET: "ITALY", REGION: "SOUTH"},
{COUNTRY_NAME: "Spain", COUNTRY_CODE: "SP", TERRITORY: "SPAIN", MARKET: "SPAIN", REGION: "SOUTH"},...
];
I want to extract specific keys with its values ( COUNTRY_NAME and REGION ) from each array inside jsonData so my final result should be as below :
var jsonFinal = [
{COUNTRY_NAME: "Belgium", REGION: "NORTH"},
{COUNTRY_NAME: "Italy", REGION: "SOUTH"},
{COUNTRY_NAME: "Spain", REGION: "SOUTH"},...
];
I could make it work but I believe there is a better way to do it. What I did was :
I loop through each array inside my json object and remove the keys I don't need but now I am in situation that I have multiple keys to remove and don't want to delete one by one.
Any suggestions please how can I extract specific keys from a json object and add to another json object ? Thank you very much.
var jsonData = [
{COUNTRY_NAME: "Belgium", COUNTRY_CODE: "BE", TERRITORY: "BENELUX", MARKET: "Benelux", REGION: "NORTH"},
{COUNTRY_NAME: "Italy", COUNTRY_CODE: "IT", TERRITORY: "ITALY", MARKET: "ITALY", REGION: "SOUTH"},
{COUNTRY_NAME: "Spain", COUNTRY_CODE: "SP", TERRITORY: "SPAIN", MARKET: "SPAIN", REGION: "SOUTH"}
];
for (var i = 0; i < jsonData.length; i++) {
//console.log(jsonData[i]);
delete jsonData[i]['COUNTRY_CODE'];
delete jsonData[i]['TERRITORY'];
delete jsonData[i]['MARKET'];
}
var finalJSON = jsonData;
console.log(finalJSON);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>