JSFiddle - React, Tailwind, and code Playground

JavaScript

var diasSemana = ['Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sabado', 'Domingo'];

function diaSemana(nr) {
    return diasSemana[nr % 7];
}

function diasMes(ano, mes) {
    var semanas = [];
    var semana = {};
    var diaUm = new Date(ano, mes - 1);
    var inicioSemana = diaUm.getDay() - 1;
    var ultimoDia = new Date(ano, mes, -1).getDate();
    for (var i = 1; i <= ultimoDia; i++) {
        var dia = diaSemana(inicioSemana++);
        semana[dia] = [i, mes].join('/');
        if (i % 7 == 0) {
            semanas.push(semana);
            semana = {}
        } else {
            if (i == ultimoDia) semanas.push(semana); // juntar os ultimos dias
        }
    }
    return semanas;
}

var janeiro = diasMes(2016, 1);
console.log(janeiro)
alert(JSON.stringify(janeiro, null, 4));