I have looked all over as to why this is happening. I have a script that uses AJAX to get local JSON files and merge them together so I can later display the data in a HTML table.
The script works fine to display the objects in Chrome Console. But I am unable to access particular elements such as ‘object.country’. Any help on how to reslove this?
console output (Shortened):
(3) [Array(244), "success", {…}]
0: Array(244)
[0 … 99]
0: {country: "Afghanistan", city: "Kabul", continent: "Asia", costline: 0, currency_name: "Afghanistan Afghani", …}
Script
function onLoad() {
$.when(
$.ajax({
url: "./country-objects/country-by-capital-city.json",
type: "GET",
dataType: 'JSON'
}),
$.ajax({
url: "./country-objects/country-by-continent.json",
type: "GET",
dataType: 'JSON'
}),
$.ajax({
url: "./country-objects/country-by-costline.json",
type: "GET",
dataType: 'JSON'
}),
$.ajax({
url: "./country-objects/country-by-currency-name.json",
type: "GET",
dataType: 'JSON'
}),
$.ajax({
url: "./country-objects/country-by-flag.json",
type: "GET",
dataType: 'JSON'
}),
$.ajax({
url: "./country-objects/country-by-domain-tld.json",
type: "GET",
dataType: 'JSON'
})).then(function (res1, res2, res3, res4, res5, res6) {
const object = $.extend(true, res1, res2, res3, res4, res5, res6);
console.log(object);
})
}
— Edit —
Example objects from each JSON file (first entry of each). ALl files in same order a-z:
// /country-objects/country-by-capital-city.json
{
"country": "Afghanistan",
"city": "Kabul"
}
// /country-objects/country-by-continent.json
{
"country": "Afghanistan",
"continent": "Asia"
}
// /country-objects/country-by-costline.json
{
"country": "Afghanistan",
"costline": 0
}
// /country-objects/country-by-currency-name.json
{
"country": "Afghanistan",
"currency_name": "Afghanistan Afghani"
}
// /country-objects/country-by-flag.json
{
"country": "Afghanistan",
"flag_base64": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0ia......"
}
// /country-objects/country-by-domain-tld.json
{
"country": "Afghanistan",
"tld": ".af"
}
// Goal, continue for each country
{
"country": "Afghanistan",
"city": "Kabul",
"continent": "Asia",
"costline": 0,
"currency_name": "Afghanistan Afghani",
"flag_base64": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0ia......",
"tld": ".af"
},
2
Answers
I can iterate through the array like so.
Thank you @Frenchy for pointing that out.
You could iterate or filter: