This is the input json which i am reading and trying to change the structure as per requirement .But unable to do so countries i am able to put inside object but timezone i am unable to read .Can any one help clearly i need to work on objects little harder .
let timezone = {
countries: {
Algeria: {
cities: {
"Algiers": {
city: "Algiers",
timezone: "(UTC+01:00) W. central africa standard time",
ianaTz: "Africa/Algiers",
},
},
},
Argentina: {
cities: {
"Buenos aires": {
city: "Buenos aires",
timezone: "(UTC-03:00) Argentina standard time",
ianaTz: "America/Argentina/Buenos_Aires",
},
"Cordoba": {
city: "Cordoba",
timezone: "(UTC-03:00) Argentina standard time",
ianaTz: "America/Argentina/Cordoba",
},
"Tucuman": {
city: "Tucuman",
timezone: "(UTC-03:00) Argentina standard time",
ianaTz: "America/Argentina/Tucuman",
},
},
}
}
}
function editTimezone(timezone) {
var arr = [];
for (var key in timezone.countries) {
var city = timezone.countries[key].cities;
for (var cit in city) {
var timezone = timezone.countries[key].cities.cit.timezone; //undefined
}
arr.push({
"country": key,
"timezone": [timezone]
})
}
console.log(arr);
}
editTimezone(timezone);
//OUTPUT REQUIRED--
[{
"country":"Algeria"
"timezone": ["((UTC+01:00) W. central africa standard time"]
},
{
"country":"Argentina"
"timezone": ["(UTC-03:00) Argentina standard time","(UTC-03:00) Argentina standard
time","(UTC-03:00) Argentina standard time"]
}
]
Not sure what logic i should write for achieving the output.