JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://raw.github.com/timrwood/moment/1.7.0/min/moment.min.js"></script>

CSS

p {
    padding: 3px 10px;
    margin: 3px 10px;
    border: 1px solid #ddd;
    background: #eee;
}

JavaScript

calcWeeksInMonth(date) {
    const dateFirst = moment(date).date(1)
    const dateLast = moment(date).date(date.daysInMonth())
    const startWeek = dateFirst.week()
    const endWeek = dateLast.week()
    if (endWeek < startWeek) {
        return dateFirst.weeksInYear() - startWeek + 1 + endWeek
    } else {
        return endWeek - startWeek + 1
    }
}