I just started trying Javascript and I'm struggling. My end result is supposed to be a chronological timeline of activities (Calls, Meetings, Tasks).
I'm receiving a file from an application with different types of records. It contains Calls, Meetings, and Tasks. When I receive the file, they are in no particular order and each record type has different fields. I need to get them into the same table but sorted by date. Here is a sample file with a Call and a Task but it might have 10 or more records of differing type.
[
{
    "Owner": {
        "name": "Raymond Carlson",
    },
    "Check_In_State": null,
    "Activity_Type": "Calls",
    "Call_Start_Time": "2022-10-23T20:00:00-05:00",
    "$editable": true,
    "Call_Agenda": "Need to call and discuss some upcoming events",
    "Subject": "Call scheduled with Florence"
},
{
    "Owner": {
        "name": "Raymond Carlson",
    },
    "Check_In_State": null,
    "Activity_Type": "Tasks",
    "Due_Date": "2022-10-24",
    "$editable": true,
    "Description": "-Review Action Items from Last week”,
    "Subject": "Complete Onboarding"
}
]
This is what I'm doing now and I know it's not the best way to go about it.
         for (var i = 0; i < obj.length; i++) {
 
            var activityType0 = (obj[0].Activity_Type)
            var activityOwner0 = (obj[0].Owner.name);
            if (activityType0 == "Events") {
                start0 = (obj[0].Start_DateTime)
                startDate0 = new Date(start0);
                activityDate0 = startDate0.toLocaleString();
                activityTitle0 = (obj[0].Subject);
                activityDesc0 = (obj[0].Description);
            }
            else if (activityType0 == "Tasks"){
                dueDate0 = (obj[0].Due_Date)
                activityDate0 = dueDate0;
                activityTitle0 = (obj[0].Subject);
                activityDesc0 = (obj[0].Description);
            }
            else if (activityType0 == "Calls"){
                callStart0 = (obj[0].Call_Start_Time)
                callStartTime0 = new Date(callStart0);
                activityDate0 = callStartTime0.toLocaleString();
                activityTitle0 = (obj[0].Subject);
                activityDesc0 = (obj[0].Call_Agenda);
            }
    }
So regardless of the type of record, I have an activityOwner, activityDate, activityTitle, activityDesc, And that's what I need.
Aside from that code above needing work, now my question is, what do I need to do with these values for each record to put them in order by "activityDate". Do I need to put them back into an array then sort and if so, what's the best approach?
Thank you much!
 
    