2 ways to handle JSON structure
by Nivaldo
JavaScript
// Code goes here
var journals = [
{
"Journal": "Am Psychol",
"January": "4046",
"February": "4520",
"March": "3372",
"April": "5801",
"May": "5044",
"June": "3974",
"July": "3241",
"August": "3272",
"September": "4839",
"October": "5665"
},
{
"Journal": "Behav Neurosci",
"January": "7229",
"February": "6373",
"March": "4777",
"April": "6212",
"May": "6774",
"June": "5491",
"July": "4288",
"August": "3666",
"September": "4246",
"October": "4968"
}
];
var months = d3.keys(journals[0]).slice(1);
console.log(months);
// METHOD 1
var a = [];
for (var ct=0; ct<journals.length; ct++) {
var b = d3.values(journals[ct]);
for (var ct2=0; ct2<b.length; ct2++) {
if (!isNaN(b[ct2])) {
a.push(b[ct2]);
}
}
}
console.log(d3.max(a));
// METHOD 2 - more elegant
var a2 = [];
journals.forEach(function(journal) {
months.forEach(function(month) {
a2.push(+journal[month]);
});
});
console.log(d3.max(a2));