Get next specific day of week

by MegaScience

HTML

<p id="a"></p>
<p id="b"></p>
<p id="c"></p>

JavaScript

function getNextOccurUTCDay(d, day) {
    d.setUTCDate(d.getUTCDate() + (7 + day - d.getUTCDay()) % 7)
    d.setUTCHours(0, 0, 0, 0)
    if (d < new Date()) d.setUTCDate(d.getUTCDate() + 7)
    return d
}

function applyDates() {
    const abc = {
        a: document.getElementById('a'),
        b: document.getElementById('b'),
        c: document.getElementById('c')
    }
    da = new Date()
    db = new Date(+da)
    db.setUTCDate(db.getUTCDate() + 7)
    dc = new Date(+da)
    dc.setUTCDate(db.getUTCDate() + (7 * 4))
    abc.a.textContent = getNextOccurUTCDay(da, 5)
    abc.b.textContent = getNextOccurUTCDay(db, 5)
    abc.c.textContent = getNextOccurUTCDay(dc, 5)
}

applyDates()