I'm trying to have the days of the week appear within my H2 elements but the console says "cannot read property of fday undefined" Below is the HTML elements I'm trying to append to and the JS i'm using to do it
<div class="flex-container col-xs-6" id="weekDay">
<h2 data-fday="1"></h2>
<h2 data-fday="2"></h2>
<h2 data-fday="3"></h2>
<h2 data-fday="4"></h2>
<h2 data-fday="5"></h2>
</div>
for (var i = 0; i < 6; i++) { //Begin loop - loop over the object's next 5 days
const weekly_forecast = data.daily.data;
let today = moment().format('D MMM, YYYY');//Format the date in the form Day / Month / Year from moment.js library
const weekday = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
$('#day_'+[i]).append("<h3>"+weekly_forecast[i].apparentTemperatureMax + "<br></h3><P>" + weekly_forecast[i].summary + "</p>"); //append a <h2> within that div containing the day and <p> containing the high and low temperature for the day
//Get the day of the week...
let a = new Date(today); //parse current date
let nextDay = weekday[a.getDay()+i]; //(get the day of the week)
const dayData = $("#weekDay > h2").dataset.fday; //accessthe data-attribute of each H2 within #weekday
if (dayData = [i]) { //if the data attribute of the H2 element === i
$(this).append(nextDay); //append the current day of the week in the H2
}
console.log(nextDay);
}
$("#weekDay > h2")actually returns anything.data('fday')should work